Class: Conductor::Worker::Events::TaskExecutionCompleted

Inherits:
TaskRunnerEvent show all
Defined in:
lib/conductor/worker/events/task_runner_events.rb

Overview

Published when task execution completes successfully

Instance Attribute Summary collapse

Attributes inherited from TaskRunnerEvent

#task_type

Attributes inherited from ConductorEvent

#timestamp

Instance Method Summary collapse

Constructor Details

#initialize(task_type:, task_id:, worker_id:, workflow_instance_id:, duration_ms:, output_size_bytes: nil) ⇒ TaskExecutionCompleted

Returns a new instance of TaskExecutionCompleted.

Parameters:

  • task_type (String)

    Task definition name

  • task_id (String)

    Unique task identifier

  • worker_id (String)

    Unique worker identifier

  • workflow_instance_id (String)

    Workflow instance identifier

  • duration_ms (Float)

    Duration of execution in milliseconds

  • output_size_bytes (Integer, nil) (defaults to: nil)

    Size of output data in bytes



123
124
125
126
127
128
129
130
131
# File 'lib/conductor/worker/events/task_runner_events.rb', line 123

def initialize(task_type:, task_id:, worker_id:, workflow_instance_id:,
               duration_ms:, output_size_bytes: nil)
  super(task_type: task_type)
  @task_id = task_id
  @worker_id = worker_id
  @workflow_instance_id = workflow_instance_id
  @duration_ms = duration_ms
  @output_size_bytes = output_size_bytes
end

Instance Attribute Details

#duration_msFloat (readonly)

Returns Duration of execution in milliseconds.

Returns:

  • (Float)

    Duration of execution in milliseconds



113
114
115
# File 'lib/conductor/worker/events/task_runner_events.rb', line 113

def duration_ms
  @duration_ms
end

#output_size_bytesInteger? (readonly)

Returns Size of output data in bytes.

Returns:

  • (Integer, nil)

    Size of output data in bytes



115
116
117
# File 'lib/conductor/worker/events/task_runner_events.rb', line 115

def output_size_bytes
  @output_size_bytes
end

#task_idString (readonly)

Returns Unique task identifier.

Returns:

  • (String)

    Unique task identifier



107
108
109
# File 'lib/conductor/worker/events/task_runner_events.rb', line 107

def task_id
  @task_id
end

#worker_idString (readonly)

Returns Unique worker identifier.

Returns:

  • (String)

    Unique worker identifier



109
110
111
# File 'lib/conductor/worker/events/task_runner_events.rb', line 109

def worker_id
  @worker_id
end

#workflow_instance_idString (readonly)

Returns Workflow instance identifier.

Returns:

  • (String)

    Workflow instance identifier



111
112
113
# File 'lib/conductor/worker/events/task_runner_events.rb', line 111

def workflow_instance_id
  @workflow_instance_id
end

Instance Method Details

#to_hObject



133
134
135
136
137
138
139
140
141
# File 'lib/conductor/worker/events/task_runner_events.rb', line 133

def to_h
  super.merge(
    task_id: @task_id,
    worker_id: @worker_id,
    workflow_instance_id: @workflow_instance_id,
    duration_ms: @duration_ms,
    output_size_bytes: @output_size_bytes
  )
end