Struct google_api_proto::google::cloud::tasks::v2beta3::Queue

source ·
pub struct Queue {
    pub name: String,
    pub http_target: Option<HttpTarget>,
    pub rate_limits: Option<RateLimits>,
    pub retry_config: Option<RetryConfig>,
    pub state: i32,
    pub purge_time: Option<Timestamp>,
    pub task_ttl: Option<Duration>,
    pub tombstone_ttl: Option<Duration>,
    pub stackdriver_logging_config: Option<StackdriverLoggingConfig>,
    pub type: i32,
    pub stats: Option<QueueStats>,
    pub queue_type: Option<QueueType>,
}
Expand description

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.

Fields§

§name: String

Caller-specified and required in [CreateQueue][google.cloud.tasks.v2beta3.CloudTasks.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 projects
  • LOCATION_ID is the canonical ID for the queue’s location. The list of available locations can be obtained by calling [ListLocations][google.cloud.location.Locations.ListLocations]. 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.
§http_target: Option<HttpTarget>

Modifies HTTP target for HTTP tasks.

§rate_limits: Option<RateLimits>

Rate limits for task dispatches.

[rate_limits][google.cloud.tasks.v2beta3.Queue.rate_limits] and [retry_config][google.cloud.tasks.v2beta3.Queue.retry_config] are related because they both control task attempts. However they control task attempts in different ways:

  • [rate_limits][google.cloud.tasks.v2beta3.Queue.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][google.cloud.tasks.v2beta3.Queue.retry_config] controls what happens to particular a task after its first attempt fails. That is, [retry_config][google.cloud.tasks.v2beta3.Queue.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][google.cloud.tasks.v2beta3.Queue.rate_limits], [retry_config][google.cloud.tasks.v2beta3.Queue.retry_config], and the [queue’s state][google.cloud.tasks.v2beta3.Queue.state].
  • System throttling due to 429 (Too Many Requests) or 503 (Service Unavailable) responses from the worker, high error rates, or to smooth sudden large traffic spikes.
§retry_config: Option<RetryConfig>

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.
§state: i32

Output only. The state of the queue.

state can only be changed by called [PauseQueue][google.cloud.tasks.v2beta3.CloudTasks.PauseQueue], [ResumeQueue][google.cloud.tasks.v2beta3.CloudTasks.ResumeQueue], or uploading queue.yaml/xml. [UpdateQueue][google.cloud.tasks.v2beta3.CloudTasks.UpdateQueue] cannot be used to change state.

§purge_time: Option<Timestamp>

Output only. The last time this queue was purged.

All tasks that were [created][google.cloud.tasks.v2beta3.Task.create_time] before this time were purged.

A queue can be purged using [PurgeQueue][google.cloud.tasks.v2beta3.CloudTasks.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.

§task_ttl: Option<Duration>

The maximum amount of time that a task will be retained in this queue.

Queues created by Cloud Tasks have a default task_ttl of 31 days. After a task has lived for task_ttl, the task will be deleted regardless of whether it was dispatched or not.

The task_ttl for queues created via queue.yaml/xml is equal to the maximum duration because there is a storage quota for these queues. To view the maximum valid duration, see the documentation for [Duration][google.protobuf.Duration].

§tombstone_ttl: Option<Duration>

The task tombstone time to live (TTL).

After a task is deleted or executed, the task’s tombstone is retained for the length of time specified by tombstone_ttl. The tombstone is used by task de-duplication; another task with the same name can’t be created until the tombstone has expired. For more information about task de-duplication, see the documentation for [CreateTaskRequest][google.cloud.tasks.v2beta3.CreateTaskRequest.task].

Queues created by Cloud Tasks have a default tombstone_ttl of 1 hour.

§stackdriver_logging_config: Option<StackdriverLoggingConfig>

Configuration options for writing logs to Stackdriver Logging. If this field is unset, then no logs are written.

§type: i32

Immutable. The type of a queue (push or pull).

Queue.type is an immutable property of the queue that is set at the queue creation time. When left unspecified, the default value of PUSH is selected.

§stats: Option<QueueStats>

Output only. The realtime, informational statistics for a queue. In order to receive the statistics the caller should include this field in the FieldMask.

§queue_type: Option<QueueType>

Implementations§

source§

impl Queue

source

pub fn state(&self) -> State

Returns the enum value of state, or the default if the field is set to an invalid enum value.

source

pub fn set_state(&mut self, value: State)

Sets state to the provided enum value.

source

pub fn type(&self) -> Type

Returns the enum value of type, or the default if the field is set to an invalid enum value.

source

pub fn set_type(&mut self, value: Type)

Sets type to the provided enum value.

Trait Implementations§

source§

impl Clone for Queue

source§

fn clone(&self) -> Queue

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Queue

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for Queue

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl Message for Queue

source§

fn encoded_len(&self) -> usize

Returns the encoded length of the message without a length delimiter.
source§

fn clear(&mut self)

Clears the message, resetting all fields to their default.
source§

fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>
where Self: Sized,

Encodes the message to a buffer. Read more
source§

fn encode_to_vec(&self) -> Vec<u8>
where Self: Sized,

Encodes the message to a newly allocated buffer.
source§

fn encode_length_delimited( &self, buf: &mut impl BufMut, ) -> Result<(), EncodeError>
where Self: Sized,

Encodes the message with a length-delimiter to a buffer. Read more
source§

fn encode_length_delimited_to_vec(&self) -> Vec<u8>
where Self: Sized,

Encodes the message with a length-delimiter to a newly allocated buffer.
source§

fn decode(buf: impl Buf) -> Result<Self, DecodeError>
where Self: Default,

Decodes an instance of the message from a buffer. Read more
source§

fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>
where Self: Default,

Decodes a length-delimited instance of the message from the buffer.
source§

fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>
where Self: Sized,

Decodes an instance of the message from a buffer, and merges it into self. Read more
source§

fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>
where Self: Sized,

Decodes a length-delimited instance of the message from buffer, and merges it into self.
source§

impl PartialEq for Queue

source§

fn eq(&self, other: &Queue) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for Queue

Auto Trait Implementations§

§

impl Freeze for Queue

§

impl RefUnwindSafe for Queue

§

impl Send for Queue

§

impl Sync for Queue

§

impl Unpin for Queue

§

impl UnwindSafe for Queue

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FromRef<T> for T
where T: Clone,

§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoRequest<T> for T

source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more