Class: Google::Cloud::Tasks::V2::Queue
- Inherits:
-
Object
- Object
- Google::Cloud::Tasks::V2::Queue
- Extended by:
- Protobuf::MessageExts::ClassMethods
- Includes:
- Protobuf::MessageExts
- Defined in:
- proto_docs/google/cloud/tasks/v2/queue.rb
Overview
A queue is a container of related tasks. Queues are configured to manage how those tasks are dispatched. Configurable properties include rate limits, retry options, queue types, and others.
Defined Under Namespace
Modules: State
Instance Attribute Summary collapse
-
#app_engine_routing_override ⇒ ::Google::Cloud::Tasks::V2::AppEngineRouting
Overrides for [task-level app_engine_routing][google.cloud.tasks.v2.AppEngineHttpRequest.app_engine_routing].
-
#name ⇒ ::String
Caller-specified and required in CreateQueue, after which it becomes output only.
-
#purge_time ⇒ ::Google::Protobuf::Timestamp
Output only.
-
#rate_limits ⇒ ::Google::Cloud::Tasks::V2::RateLimits
Rate limits for task dispatches.
-
#retry_config ⇒ ::Google::Cloud::Tasks::V2::RetryConfig
Settings that determine the retry behavior.
-
#stackdriver_logging_config ⇒ ::Google::Cloud::Tasks::V2::StackdriverLoggingConfig
Configuration options for writing logs to Stackdriver Logging.
-
#state ⇒ ::Google::Cloud::Tasks::V2::Queue::State
Output only.
Instance Attribute Details
#app_engine_routing_override ⇒ ::Google::Cloud::Tasks::V2::AppEngineRouting
Returns Overrides for [task-level app_engine_routing][google.cloud.tasks.v2.AppEngineHttpRequest.app_engine_routing]. These settings apply only to App Engine tasks in this queue. Http tasks are not affected.
If set, app_engine_routing_override
is used for all
App Engine tasks in the
queue, no matter what the setting is for the [task-level
app_engine_routing][google.cloud.tasks.v2.AppEngineHttpRequest.app_engine_routing].
133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'proto_docs/google/cloud/tasks/v2/queue.rb', line 133 class Queue include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # State of the queue. module State # Unspecified state. STATE_UNSPECIFIED = 0 # The queue is running. Tasks can be dispatched. # # If the queue was created using Cloud Tasks and the queue has # had no activity (method calls or task dispatches) for 30 days, # the queue may take a few minutes to re-activate. Some method # calls may return [NOT_FOUND][google.rpc.Code.NOT_FOUND] and # tasks may not be dispatched for a few minutes until the queue # has been re-activated. RUNNING = 1 # Tasks are paused by the user. If the queue is paused then Cloud # Tasks will stop delivering tasks from it, but more tasks can # still be added to it by the user. PAUSED = 2 # The queue is disabled. # # A queue becomes `DISABLED` when # [queue.yaml](https://cloud.google.com/appengine/docs/python/config/queueref) # or # [queue.xml](https://cloud.google.com/appengine/docs/standard/java/config/queueref) # is uploaded which does not contain the queue. You cannot directly disable # a queue. # # When a queue is disabled, tasks can still be added to a queue # but the tasks are not dispatched. # # To permanently delete this queue and all of its tasks, call # {::Google::Cloud::Tasks::V2::CloudTasks::Client#delete_queue DeleteQueue}. DISABLED = 3 end end |
#name ⇒ ::String
Returns Caller-specified and required in CreateQueue, after which it becomes output only.
The queue name.
The queue name must have the following format:
projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID
PROJECT_ID
can contain letters ([A-Za-z]), numbers ([0-9]), hyphens (-), colons (:), or periods (.). For more information, see Identifying projectsLOCATION_ID
is the canonical ID for the queue's location. The list of available locations can be obtained by calling::Google::Cloud::Location::Locations::Client#list_locations
. For more information, see https://cloud.google.com/about/locations/.QUEUE_ID
can contain letters ([A-Za-z]), numbers ([0-9]), or hyphens (-). The maximum length is 100 characters.
133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'proto_docs/google/cloud/tasks/v2/queue.rb', line 133 class Queue include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # State of the queue. module State # Unspecified state. STATE_UNSPECIFIED = 0 # The queue is running. Tasks can be dispatched. # # If the queue was created using Cloud Tasks and the queue has # had no activity (method calls or task dispatches) for 30 days, # the queue may take a few minutes to re-activate. Some method # calls may return [NOT_FOUND][google.rpc.Code.NOT_FOUND] and # tasks may not be dispatched for a few minutes until the queue # has been re-activated. RUNNING = 1 # Tasks are paused by the user. If the queue is paused then Cloud # Tasks will stop delivering tasks from it, but more tasks can # still be added to it by the user. PAUSED = 2 # The queue is disabled. # # A queue becomes `DISABLED` when # [queue.yaml](https://cloud.google.com/appengine/docs/python/config/queueref) # or # [queue.xml](https://cloud.google.com/appengine/docs/standard/java/config/queueref) # is uploaded which does not contain the queue. You cannot directly disable # a queue. # # When a queue is disabled, tasks can still be added to a queue # but the tasks are not dispatched. # # To permanently delete this queue and all of its tasks, call # {::Google::Cloud::Tasks::V2::CloudTasks::Client#delete_queue DeleteQueue}. DISABLED = 3 end end |
#purge_time ⇒ ::Google::Protobuf::Timestamp
Returns Output only. The last time this queue was purged.
All tasks that were created before this time were purged.
A queue can be purged using PurgeQueue, the App Engine Task Queue SDK, or the Cloud Console.
Purge time will be truncated to the nearest microsecond. Purge time will be unset if the queue has never been purged.
133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'proto_docs/google/cloud/tasks/v2/queue.rb', line 133 class Queue include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # State of the queue. module State # Unspecified state. STATE_UNSPECIFIED = 0 # The queue is running. Tasks can be dispatched. # # If the queue was created using Cloud Tasks and the queue has # had no activity (method calls or task dispatches) for 30 days, # the queue may take a few minutes to re-activate. Some method # calls may return [NOT_FOUND][google.rpc.Code.NOT_FOUND] and # tasks may not be dispatched for a few minutes until the queue # has been re-activated. RUNNING = 1 # Tasks are paused by the user. If the queue is paused then Cloud # Tasks will stop delivering tasks from it, but more tasks can # still be added to it by the user. PAUSED = 2 # The queue is disabled. # # A queue becomes `DISABLED` when # [queue.yaml](https://cloud.google.com/appengine/docs/python/config/queueref) # or # [queue.xml](https://cloud.google.com/appengine/docs/standard/java/config/queueref) # is uploaded which does not contain the queue. You cannot directly disable # a queue. # # When a queue is disabled, tasks can still be added to a queue # but the tasks are not dispatched. # # To permanently delete this queue and all of its tasks, call # {::Google::Cloud::Tasks::V2::CloudTasks::Client#delete_queue DeleteQueue}. DISABLED = 3 end end |
#rate_limits ⇒ ::Google::Cloud::Tasks::V2::RateLimits
Returns Rate limits for task dispatches.
rate_limits and retry_config are related because they both control task attempts. However they control task attempts in different ways:
- rate_limits controls the total rate of dispatches from a queue (i.e. all traffic dispatched from the queue, regardless of whether the dispatch is from a first attempt or a retry).
- retry_config controls what happens to particular a task after its first attempt fails. That is, retry_config controls task retries (the second attempt, third attempt, etc).
The queue's actual dispatch rate is the result of:
- Number of tasks in the queue
- User-specified throttling: rate_limits, retry_config, and the [queue's state][google.cloud.tasks.v2.Queue.state].
- System throttling due to
429
(Too Many Requests) or503
(Service Unavailable) responses from the worker, high error rates, or to smooth sudden large traffic spikes.
133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'proto_docs/google/cloud/tasks/v2/queue.rb', line 133 class Queue include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # State of the queue. module State # Unspecified state. STATE_UNSPECIFIED = 0 # The queue is running. Tasks can be dispatched. # # If the queue was created using Cloud Tasks and the queue has # had no activity (method calls or task dispatches) for 30 days, # the queue may take a few minutes to re-activate. Some method # calls may return [NOT_FOUND][google.rpc.Code.NOT_FOUND] and # tasks may not be dispatched for a few minutes until the queue # has been re-activated. RUNNING = 1 # Tasks are paused by the user. If the queue is paused then Cloud # Tasks will stop delivering tasks from it, but more tasks can # still be added to it by the user. PAUSED = 2 # The queue is disabled. # # A queue becomes `DISABLED` when # [queue.yaml](https://cloud.google.com/appengine/docs/python/config/queueref) # or # [queue.xml](https://cloud.google.com/appengine/docs/standard/java/config/queueref) # is uploaded which does not contain the queue. You cannot directly disable # a queue. # # When a queue is disabled, tasks can still be added to a queue # but the tasks are not dispatched. # # To permanently delete this queue and all of its tasks, call # {::Google::Cloud::Tasks::V2::CloudTasks::Client#delete_queue DeleteQueue}. DISABLED = 3 end end |
#retry_config ⇒ ::Google::Cloud::Tasks::V2::RetryConfig
Returns Settings that determine the retry behavior.
- For tasks created using Cloud Tasks: the queue-level retry settings apply to all tasks in the queue that were created using Cloud Tasks. Retry settings cannot be set on individual tasks.
- For tasks created using the App Engine SDK: the queue-level retry settings apply to all tasks in the queue which do not have retry settings explicitly set on the task and were created by the App Engine SDK. See App Engine documentation.
133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'proto_docs/google/cloud/tasks/v2/queue.rb', line 133 class Queue include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # State of the queue. module State # Unspecified state. STATE_UNSPECIFIED = 0 # The queue is running. Tasks can be dispatched. # # If the queue was created using Cloud Tasks and the queue has # had no activity (method calls or task dispatches) for 30 days, # the queue may take a few minutes to re-activate. Some method # calls may return [NOT_FOUND][google.rpc.Code.NOT_FOUND] and # tasks may not be dispatched for a few minutes until the queue # has been re-activated. RUNNING = 1 # Tasks are paused by the user. If the queue is paused then Cloud # Tasks will stop delivering tasks from it, but more tasks can # still be added to it by the user. PAUSED = 2 # The queue is disabled. # # A queue becomes `DISABLED` when # [queue.yaml](https://cloud.google.com/appengine/docs/python/config/queueref) # or # [queue.xml](https://cloud.google.com/appengine/docs/standard/java/config/queueref) # is uploaded which does not contain the queue. You cannot directly disable # a queue. # # When a queue is disabled, tasks can still be added to a queue # but the tasks are not dispatched. # # To permanently delete this queue and all of its tasks, call # {::Google::Cloud::Tasks::V2::CloudTasks::Client#delete_queue DeleteQueue}. DISABLED = 3 end end |
#stackdriver_logging_config ⇒ ::Google::Cloud::Tasks::V2::StackdriverLoggingConfig
Returns Configuration options for writing logs to Stackdriver Logging. If this field is unset, then no logs are written.
133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'proto_docs/google/cloud/tasks/v2/queue.rb', line 133 class Queue include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # State of the queue. module State # Unspecified state. STATE_UNSPECIFIED = 0 # The queue is running. Tasks can be dispatched. # # If the queue was created using Cloud Tasks and the queue has # had no activity (method calls or task dispatches) for 30 days, # the queue may take a few minutes to re-activate. Some method # calls may return [NOT_FOUND][google.rpc.Code.NOT_FOUND] and # tasks may not be dispatched for a few minutes until the queue # has been re-activated. RUNNING = 1 # Tasks are paused by the user. If the queue is paused then Cloud # Tasks will stop delivering tasks from it, but more tasks can # still be added to it by the user. PAUSED = 2 # The queue is disabled. # # A queue becomes `DISABLED` when # [queue.yaml](https://cloud.google.com/appengine/docs/python/config/queueref) # or # [queue.xml](https://cloud.google.com/appengine/docs/standard/java/config/queueref) # is uploaded which does not contain the queue. You cannot directly disable # a queue. # # When a queue is disabled, tasks can still be added to a queue # but the tasks are not dispatched. # # To permanently delete this queue and all of its tasks, call # {::Google::Cloud::Tasks::V2::CloudTasks::Client#delete_queue DeleteQueue}. DISABLED = 3 end end |
#state ⇒ ::Google::Cloud::Tasks::V2::Queue::State
Returns Output only. The state of the queue.
state
can only be changed by calling
PauseQueue,
ResumeQueue, or uploading
queue.yaml/xml.
UpdateQueue cannot be used
to change state
.
133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'proto_docs/google/cloud/tasks/v2/queue.rb', line 133 class Queue include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # State of the queue. module State # Unspecified state. STATE_UNSPECIFIED = 0 # The queue is running. Tasks can be dispatched. # # If the queue was created using Cloud Tasks and the queue has # had no activity (method calls or task dispatches) for 30 days, # the queue may take a few minutes to re-activate. Some method # calls may return [NOT_FOUND][google.rpc.Code.NOT_FOUND] and # tasks may not be dispatched for a few minutes until the queue # has been re-activated. RUNNING = 1 # Tasks are paused by the user. If the queue is paused then Cloud # Tasks will stop delivering tasks from it, but more tasks can # still be added to it by the user. PAUSED = 2 # The queue is disabled. # # A queue becomes `DISABLED` when # [queue.yaml](https://cloud.google.com/appengine/docs/python/config/queueref) # or # [queue.xml](https://cloud.google.com/appengine/docs/standard/java/config/queueref) # is uploaded which does not contain the queue. You cannot directly disable # a queue. # # When a queue is disabled, tasks can still be added to a queue # but the tasks are not dispatched. # # To permanently delete this queue and all of its tasks, call # {::Google::Cloud::Tasks::V2::CloudTasks::Client#delete_queue DeleteQueue}. DISABLED = 3 end end |