Class: Google::Cloud::Tasks::V2::Task

Inherits:
Object
  • Object
show all
Defined in:
lib/google/cloud/tasks/v2/doc/google/cloud/tasks/v2/task.rb

Overview

A unit of scheduled work.

Defined Under Namespace

Modules: View

Instance Attribute Summary collapse

Instance Attribute Details

#app_engine_http_requestGoogle::Cloud::Tasks::V2::AppEngineHttpRequest

Returns HTTP request that is sent to the App Engine app handler.

An App Engine task is a task that has AppEngineHttpRequest set.

Returns:



118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File 'lib/google/cloud/tasks/v2/doc/google/cloud/tasks/v2/task.rb', line 118

class Task
  # The view specifies a subset of {Google::Cloud::Tasks::V2::Task Task} data.
  #
  # When a task is returned in a response, not all
  # information is retrieved by default because some data, such as
  # payloads, might be desirable to return only when needed because
  # of its large size or because of the sensitivity of data that it
  # contains.
  module View
    # Unspecified. Defaults to BASIC.
    VIEW_UNSPECIFIED = 0

    # The basic view omits fields which can be large or can contain
    # sensitive data.
    #
    # This view does not include the
    # {Google::Cloud::Tasks::V2::AppEngineHttpRequest#body body in AppEngineHttpRequest}.
    # Bodies are desirable to return only when needed, because they
    # can be large and because of the sensitivity of the data that you
    # choose to store in it.
    BASIC = 1

    # All information is returned.
    #
    # Authorization for {Google::Cloud::Tasks::V2::Task::View::FULL FULL} requires
    # `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)
    # permission on the {Google::Cloud::Tasks::V2::Queue Queue} resource.
    FULL = 2
  end
end

#create_timeGoogle::Protobuf::Timestamp

Returns Output only. The time that the task was created.

create_time will be truncated to the nearest second.

Returns:

  • (Google::Protobuf::Timestamp)

    Output only. The time that the task was created.

    create_time will be truncated to the nearest second.



118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File 'lib/google/cloud/tasks/v2/doc/google/cloud/tasks/v2/task.rb', line 118

class Task
  # The view specifies a subset of {Google::Cloud::Tasks::V2::Task Task} data.
  #
  # When a task is returned in a response, not all
  # information is retrieved by default because some data, such as
  # payloads, might be desirable to return only when needed because
  # of its large size or because of the sensitivity of data that it
  # contains.
  module View
    # Unspecified. Defaults to BASIC.
    VIEW_UNSPECIFIED = 0

    # The basic view omits fields which can be large or can contain
    # sensitive data.
    #
    # This view does not include the
    # {Google::Cloud::Tasks::V2::AppEngineHttpRequest#body body in AppEngineHttpRequest}.
    # Bodies are desirable to return only when needed, because they
    # can be large and because of the sensitivity of the data that you
    # choose to store in it.
    BASIC = 1

    # All information is returned.
    #
    # Authorization for {Google::Cloud::Tasks::V2::Task::View::FULL FULL} requires
    # `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)
    # permission on the {Google::Cloud::Tasks::V2::Queue Queue} resource.
    FULL = 2
  end
end

#dispatch_countInteger

Returns Output only. The number of attempts dispatched.

This count includes attempts which have been dispatched but haven't received a response.

Returns:

  • (Integer)

    Output only. The number of attempts dispatched.

    This count includes attempts which have been dispatched but haven't received a response.



118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File 'lib/google/cloud/tasks/v2/doc/google/cloud/tasks/v2/task.rb', line 118

class Task
  # The view specifies a subset of {Google::Cloud::Tasks::V2::Task Task} data.
  #
  # When a task is returned in a response, not all
  # information is retrieved by default because some data, such as
  # payloads, might be desirable to return only when needed because
  # of its large size or because of the sensitivity of data that it
  # contains.
  module View
    # Unspecified. Defaults to BASIC.
    VIEW_UNSPECIFIED = 0

    # The basic view omits fields which can be large or can contain
    # sensitive data.
    #
    # This view does not include the
    # {Google::Cloud::Tasks::V2::AppEngineHttpRequest#body body in AppEngineHttpRequest}.
    # Bodies are desirable to return only when needed, because they
    # can be large and because of the sensitivity of the data that you
    # choose to store in it.
    BASIC = 1

    # All information is returned.
    #
    # Authorization for {Google::Cloud::Tasks::V2::Task::View::FULL FULL} requires
    # `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)
    # permission on the {Google::Cloud::Tasks::V2::Queue Queue} resource.
    FULL = 2
  end
end

#dispatch_deadlineGoogle::Protobuf::Duration

Returns The deadline for requests sent to the worker. If the worker does not respond by this deadline then the request is cancelled and the attempt is marked as a DEADLINE_EXCEEDED failure. Cloud Tasks will retry the task according to the RetryConfig.

Note that when the request is cancelled, Cloud Tasks will stop listing for the response, but whether the worker stops processing depends on the worker. For example, if the worker is stuck, it may not react to cancelled requests.

The default and maximum values depend on the type of request:

  • For HTTP tasks, the default is 10 minutes. The deadline must be in the interval [15 seconds, 30 minutes].

  • For App Engine tasks, 0 indicates that the request has the default deadline. The default deadline depends on the scaling type of the service: 10 minutes for standard apps with automatic scaling, 24 hours for standard apps with manual and basic scaling, and 60 minutes for flex apps. If the request deadline is set, it must be in the interval [15 seconds, 24 hours 15 seconds]. Regardless of the task's dispatch_deadline, the app handler will not run for longer than than the service's timeout. We recommend setting the dispatch_deadline to at most a few seconds more than the app handler's timeout. For more information see Timeouts.

dispatch_deadline will be truncated to the nearest millisecond. The deadline is an approximate deadline.

Returns:

  • (Google::Protobuf::Duration)

    The deadline for requests sent to the worker. If the worker does not respond by this deadline then the request is cancelled and the attempt is marked as a DEADLINE_EXCEEDED failure. Cloud Tasks will retry the task according to the RetryConfig.

    Note that when the request is cancelled, Cloud Tasks will stop listing for the response, but whether the worker stops processing depends on the worker. For example, if the worker is stuck, it may not react to cancelled requests.

    The default and maximum values depend on the type of request:

    • For HTTP tasks, the default is 10 minutes. The deadline must be in the interval [15 seconds, 30 minutes].

    • For App Engine tasks, 0 indicates that the request has the default deadline. The default deadline depends on the scaling type of the service: 10 minutes for standard apps with automatic scaling, 24 hours for standard apps with manual and basic scaling, and 60 minutes for flex apps. If the request deadline is set, it must be in the interval [15 seconds, 24 hours 15 seconds]. Regardless of the task's dispatch_deadline, the app handler will not run for longer than than the service's timeout. We recommend setting the dispatch_deadline to at most a few seconds more than the app handler's timeout. For more information see Timeouts.

    dispatch_deadline will be truncated to the nearest millisecond. The deadline is an approximate deadline.



118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File 'lib/google/cloud/tasks/v2/doc/google/cloud/tasks/v2/task.rb', line 118

class Task
  # The view specifies a subset of {Google::Cloud::Tasks::V2::Task Task} data.
  #
  # When a task is returned in a response, not all
  # information is retrieved by default because some data, such as
  # payloads, might be desirable to return only when needed because
  # of its large size or because of the sensitivity of data that it
  # contains.
  module View
    # Unspecified. Defaults to BASIC.
    VIEW_UNSPECIFIED = 0

    # The basic view omits fields which can be large or can contain
    # sensitive data.
    #
    # This view does not include the
    # {Google::Cloud::Tasks::V2::AppEngineHttpRequest#body body in AppEngineHttpRequest}.
    # Bodies are desirable to return only when needed, because they
    # can be large and because of the sensitivity of the data that you
    # choose to store in it.
    BASIC = 1

    # All information is returned.
    #
    # Authorization for {Google::Cloud::Tasks::V2::Task::View::FULL FULL} requires
    # `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)
    # permission on the {Google::Cloud::Tasks::V2::Queue Queue} resource.
    FULL = 2
  end
end

#first_attemptGoogle::Cloud::Tasks::V2::Attempt

Returns Output only. The status of the task's first attempt.

Only dispatch_time will be set. The other Attempt information is not retained by Cloud Tasks.

Returns:



118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File 'lib/google/cloud/tasks/v2/doc/google/cloud/tasks/v2/task.rb', line 118

class Task
  # The view specifies a subset of {Google::Cloud::Tasks::V2::Task Task} data.
  #
  # When a task is returned in a response, not all
  # information is retrieved by default because some data, such as
  # payloads, might be desirable to return only when needed because
  # of its large size or because of the sensitivity of data that it
  # contains.
  module View
    # Unspecified. Defaults to BASIC.
    VIEW_UNSPECIFIED = 0

    # The basic view omits fields which can be large or can contain
    # sensitive data.
    #
    # This view does not include the
    # {Google::Cloud::Tasks::V2::AppEngineHttpRequest#body body in AppEngineHttpRequest}.
    # Bodies are desirable to return only when needed, because they
    # can be large and because of the sensitivity of the data that you
    # choose to store in it.
    BASIC = 1

    # All information is returned.
    #
    # Authorization for {Google::Cloud::Tasks::V2::Task::View::FULL FULL} requires
    # `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)
    # permission on the {Google::Cloud::Tasks::V2::Queue Queue} resource.
    FULL = 2
  end
end

#http_requestGoogle::Cloud::Tasks::V2::HttpRequest

Returns HTTP request that is sent to the worker.

An HTTP task is a task that has HttpRequest set.

Returns:



118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File 'lib/google/cloud/tasks/v2/doc/google/cloud/tasks/v2/task.rb', line 118

class Task
  # The view specifies a subset of {Google::Cloud::Tasks::V2::Task Task} data.
  #
  # When a task is returned in a response, not all
  # information is retrieved by default because some data, such as
  # payloads, might be desirable to return only when needed because
  # of its large size or because of the sensitivity of data that it
  # contains.
  module View
    # Unspecified. Defaults to BASIC.
    VIEW_UNSPECIFIED = 0

    # The basic view omits fields which can be large or can contain
    # sensitive data.
    #
    # This view does not include the
    # {Google::Cloud::Tasks::V2::AppEngineHttpRequest#body body in AppEngineHttpRequest}.
    # Bodies are desirable to return only when needed, because they
    # can be large and because of the sensitivity of the data that you
    # choose to store in it.
    BASIC = 1

    # All information is returned.
    #
    # Authorization for {Google::Cloud::Tasks::V2::Task::View::FULL FULL} requires
    # `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)
    # permission on the {Google::Cloud::Tasks::V2::Queue Queue} resource.
    FULL = 2
  end
end

#last_attemptGoogle::Cloud::Tasks::V2::Attempt

Returns Output only. The status of the task's last attempt.

Returns:



118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File 'lib/google/cloud/tasks/v2/doc/google/cloud/tasks/v2/task.rb', line 118

class Task
  # The view specifies a subset of {Google::Cloud::Tasks::V2::Task Task} data.
  #
  # When a task is returned in a response, not all
  # information is retrieved by default because some data, such as
  # payloads, might be desirable to return only when needed because
  # of its large size or because of the sensitivity of data that it
  # contains.
  module View
    # Unspecified. Defaults to BASIC.
    VIEW_UNSPECIFIED = 0

    # The basic view omits fields which can be large or can contain
    # sensitive data.
    #
    # This view does not include the
    # {Google::Cloud::Tasks::V2::AppEngineHttpRequest#body body in AppEngineHttpRequest}.
    # Bodies are desirable to return only when needed, because they
    # can be large and because of the sensitivity of the data that you
    # choose to store in it.
    BASIC = 1

    # All information is returned.
    #
    # Authorization for {Google::Cloud::Tasks::V2::Task::View::FULL FULL} requires
    # `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)
    # permission on the {Google::Cloud::Tasks::V2::Queue Queue} resource.
    FULL = 2
  end
end

#nameString

Returns Optionally caller-specified in CreateTask.

The task name.

The task name must have the following format: projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_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 task's location. The list of available locations can be obtained by calling 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.
  • TASK_ID can contain only letters ([A-Za-z]), numbers ([0-9]), hyphens (-), or underscores (_). The maximum length is 500 characters.

Returns:

  • (String)

    Optionally caller-specified in CreateTask.

    The task name.

    The task name must have the following format: projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_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 task's location. The list of available locations can be obtained by calling 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.
    • TASK_ID can contain only letters ([A-Za-z]), numbers ([0-9]), hyphens (-), or underscores (_). The maximum length is 500 characters.


118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File 'lib/google/cloud/tasks/v2/doc/google/cloud/tasks/v2/task.rb', line 118

class Task
  # The view specifies a subset of {Google::Cloud::Tasks::V2::Task Task} data.
  #
  # When a task is returned in a response, not all
  # information is retrieved by default because some data, such as
  # payloads, might be desirable to return only when needed because
  # of its large size or because of the sensitivity of data that it
  # contains.
  module View
    # Unspecified. Defaults to BASIC.
    VIEW_UNSPECIFIED = 0

    # The basic view omits fields which can be large or can contain
    # sensitive data.
    #
    # This view does not include the
    # {Google::Cloud::Tasks::V2::AppEngineHttpRequest#body body in AppEngineHttpRequest}.
    # Bodies are desirable to return only when needed, because they
    # can be large and because of the sensitivity of the data that you
    # choose to store in it.
    BASIC = 1

    # All information is returned.
    #
    # Authorization for {Google::Cloud::Tasks::V2::Task::View::FULL FULL} requires
    # `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)
    # permission on the {Google::Cloud::Tasks::V2::Queue Queue} resource.
    FULL = 2
  end
end

#response_countInteger

Returns Output only. The number of attempts which have received a response.

Returns:

  • (Integer)

    Output only. The number of attempts which have received a response.



118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File 'lib/google/cloud/tasks/v2/doc/google/cloud/tasks/v2/task.rb', line 118

class Task
  # The view specifies a subset of {Google::Cloud::Tasks::V2::Task Task} data.
  #
  # When a task is returned in a response, not all
  # information is retrieved by default because some data, such as
  # payloads, might be desirable to return only when needed because
  # of its large size or because of the sensitivity of data that it
  # contains.
  module View
    # Unspecified. Defaults to BASIC.
    VIEW_UNSPECIFIED = 0

    # The basic view omits fields which can be large or can contain
    # sensitive data.
    #
    # This view does not include the
    # {Google::Cloud::Tasks::V2::AppEngineHttpRequest#body body in AppEngineHttpRequest}.
    # Bodies are desirable to return only when needed, because they
    # can be large and because of the sensitivity of the data that you
    # choose to store in it.
    BASIC = 1

    # All information is returned.
    #
    # Authorization for {Google::Cloud::Tasks::V2::Task::View::FULL FULL} requires
    # `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)
    # permission on the {Google::Cloud::Tasks::V2::Queue Queue} resource.
    FULL = 2
  end
end

#schedule_timeGoogle::Protobuf::Timestamp

Returns The time when the task is scheduled to be attempted or retried.

schedule_time will be truncated to the nearest microsecond.

Returns:

  • (Google::Protobuf::Timestamp)

    The time when the task is scheduled to be attempted or retried.

    schedule_time will be truncated to the nearest microsecond.



118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File 'lib/google/cloud/tasks/v2/doc/google/cloud/tasks/v2/task.rb', line 118

class Task
  # The view specifies a subset of {Google::Cloud::Tasks::V2::Task Task} data.
  #
  # When a task is returned in a response, not all
  # information is retrieved by default because some data, such as
  # payloads, might be desirable to return only when needed because
  # of its large size or because of the sensitivity of data that it
  # contains.
  module View
    # Unspecified. Defaults to BASIC.
    VIEW_UNSPECIFIED = 0

    # The basic view omits fields which can be large or can contain
    # sensitive data.
    #
    # This view does not include the
    # {Google::Cloud::Tasks::V2::AppEngineHttpRequest#body body in AppEngineHttpRequest}.
    # Bodies are desirable to return only when needed, because they
    # can be large and because of the sensitivity of the data that you
    # choose to store in it.
    BASIC = 1

    # All information is returned.
    #
    # Authorization for {Google::Cloud::Tasks::V2::Task::View::FULL FULL} requires
    # `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)
    # permission on the {Google::Cloud::Tasks::V2::Queue Queue} resource.
    FULL = 2
  end
end

#viewGoogle::Cloud::Tasks::V2::Task::View

Returns Output only. The view specifies which subset of the Task has been returned.

Returns:



118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File 'lib/google/cloud/tasks/v2/doc/google/cloud/tasks/v2/task.rb', line 118

class Task
  # The view specifies a subset of {Google::Cloud::Tasks::V2::Task Task} data.
  #
  # When a task is returned in a response, not all
  # information is retrieved by default because some data, such as
  # payloads, might be desirable to return only when needed because
  # of its large size or because of the sensitivity of data that it
  # contains.
  module View
    # Unspecified. Defaults to BASIC.
    VIEW_UNSPECIFIED = 0

    # The basic view omits fields which can be large or can contain
    # sensitive data.
    #
    # This view does not include the
    # {Google::Cloud::Tasks::V2::AppEngineHttpRequest#body body in AppEngineHttpRequest}.
    # Bodies are desirable to return only when needed, because they
    # can be large and because of the sensitivity of the data that you
    # choose to store in it.
    BASIC = 1

    # All information is returned.
    #
    # Authorization for {Google::Cloud::Tasks::V2::Task::View::FULL FULL} requires
    # `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)
    # permission on the {Google::Cloud::Tasks::V2::Queue Queue} resource.
    FULL = 2
  end
end