Class: Google::Apis::DataflowV1b3::WorkerMessage

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/dataflow_v1b3/classes.rb,
lib/google/apis/dataflow_v1b3/representations.rb,
lib/google/apis/dataflow_v1b3/representations.rb

Overview

WorkerMessage provides information to the backend about a worker.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ WorkerMessage

Returns a new instance of WorkerMessage.



7775
7776
7777
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 7775

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#data_sampling_reportGoogle::Apis::DataflowV1b3::DataSamplingReport

Contains per-worker telemetry about the data sampling feature. Corresponds to the JSON property dataSamplingReport



7705
7706
7707
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 7705

def data_sampling_report
  @data_sampling_report
end

#labelsHash<String,String>

Labels are used to group WorkerMessages. For example, a worker_message about a particular container might have the labels: "JOB_ID": "2015-04-22", " WORKER_ID": "wordcount-vm-2015…" "CONTAINER_TYPE": "worker", "CONTAINER_ID": " ac1234def" Label tags typically correspond to Label enum values. However, for ease of development other strings can be used as tags. LABEL_UNSPECIFIED should not be used here. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


7715
7716
7717
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 7715

def labels
  @labels
end

#per_worker_metricsGoogle::Apis::DataflowV1b3::PerWorkerMetrics

Per worker metrics. Corresponds to the JSON property perWorkerMetrics



7720
7721
7722
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 7720

def per_worker_metrics
  @per_worker_metrics
end

#streaming_scaling_reportGoogle::Apis::DataflowV1b3::StreamingScalingReport

Contains per-user worker telemetry used in streaming autoscaling. Corresponds to the JSON property streamingScalingReport



7725
7726
7727
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 7725

def streaming_scaling_report
  @streaming_scaling_report
end

#timeString

The timestamp of the worker_message. Corresponds to the JSON property time

Returns:

  • (String)


7730
7731
7732
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 7730

def time
  @time
end

#worker_health_reportGoogle::Apis::DataflowV1b3::WorkerHealthReport

WorkerHealthReport contains information about the health of a worker. The VM should be identified by the labels attached to the WorkerMessage that this health ping belongs to. Corresponds to the JSON property workerHealthReport



7737
7738
7739
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 7737

def worker_health_report
  @worker_health_report
end

#worker_lifecycle_eventGoogle::Apis::DataflowV1b3::WorkerLifecycleEvent

A report of an event in a worker's lifecycle. The proto contains one event, because the worker is expected to asynchronously send each message immediately after the event. Due to this asynchrony, messages may arrive out of order (or missing), and it is up to the consumer to interpret. The timestamp of the event is in the enclosing WorkerMessage proto. Corresponds to the JSON property workerLifecycleEvent



7746
7747
7748
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 7746

def worker_lifecycle_event
  @worker_lifecycle_event
end

#worker_message_codeGoogle::Apis::DataflowV1b3::WorkerMessageCode

A message code is used to report status and error messages to the service. The message codes are intended to be machine readable. The service will take care of translating these into user understandable messages if necessary. Example use cases: 1. Worker processes reporting successful startup. 2. Worker processes reporting specific errors (e.g. package staging failure). Corresponds to the JSON property workerMessageCode



7755
7756
7757
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 7755

def worker_message_code
  @worker_message_code
end

#worker_metricsGoogle::Apis::DataflowV1b3::ResourceUtilizationReport

Worker metrics exported from workers. This contains resource utilization metrics accumulated from a variety of sources. For more information, see go/df- resource-signals. Corresponds to the JSON property workerMetrics



7762
7763
7764
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 7762

def worker_metrics
  @worker_metrics
end

#worker_shutdown_noticeGoogle::Apis::DataflowV1b3::WorkerShutdownNotice

Shutdown notification from workers. This is to be sent by the shutdown script of the worker VM so that the backend knows that the VM is being shut down. Corresponds to the JSON property workerShutdownNotice



7768
7769
7770
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 7768

def worker_shutdown_notice
  @worker_shutdown_notice
end

#worker_thread_scaling_reportGoogle::Apis::DataflowV1b3::WorkerThreadScalingReport

Contains information about the thread scaling information of a worker. Corresponds to the JSON property workerThreadScalingReport



7773
7774
7775
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 7773

def worker_thread_scaling_report
  @worker_thread_scaling_report
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



7780
7781
7782
7783
7784
7785
7786
7787
7788
7789
7790
7791
7792
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 7780

def update!(**args)
  @data_sampling_report = args[:data_sampling_report] if args.key?(:data_sampling_report)
  @labels = args[:labels] if args.key?(:labels)
  @per_worker_metrics = args[:per_worker_metrics] if args.key?(:per_worker_metrics)
  @streaming_scaling_report = args[:streaming_scaling_report] if args.key?(:streaming_scaling_report)
  @time = args[:time] if args.key?(:time)
  @worker_health_report = args[:worker_health_report] if args.key?(:worker_health_report)
  @worker_lifecycle_event = args[:worker_lifecycle_event] if args.key?(:worker_lifecycle_event)
  @worker_message_code = args[:worker_message_code] if args.key?(:worker_message_code)
  @worker_metrics = args[:worker_metrics] if args.key?(:worker_metrics)
  @worker_shutdown_notice = args[:worker_shutdown_notice] if args.key?(:worker_shutdown_notice)
  @worker_thread_scaling_report = args[:worker_thread_scaling_report] if args.key?(:worker_thread_scaling_report)
end