Class MetricsExecutor
- java.lang.Object
-
- org.apache.heron.simulator.executors.MetricsExecutor
-
- All Implemented Interfaces:
Runnable
public class MetricsExecutor extends Object implements Runnable
MetricsExecutor would run in a separate thread via WakeableLooper, and block until it is waken up by metrics pushed from other InstanceExecutor.Then it would look up all InstanceExecutor added and invoke handleExecutorsMetrics(InstanceExecutor instance) to handle the metrics
-
-
Constructor Summary
Constructors Constructor Description MetricsExecutor(org.apache.heron.common.config.SystemConfig systemConfig)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addInstanceExecutor(InstanceExecutor instanceExecutor)
protected void
addMetricsExecutorTasks()
protected org.apache.heron.common.basics.WakeableLooper
createWakeableLooper()
protected void
handleExecutorsMetrics(InstanceExecutor instance)
protected void
handleMetricPublisherPublishMessage(String instanceId, org.apache.heron.proto.system.Metrics.MetricPublisherPublishMessage message)
void
run()
void
stop()
-
-
-
Method Detail
-
addInstanceExecutor
public void addInstanceExecutor(InstanceExecutor instanceExecutor)
-
stop
public void stop()
-
addMetricsExecutorTasks
protected void addMetricsExecutorTasks()
-
handleExecutorsMetrics
protected void handleExecutorsMetrics(InstanceExecutor instance)
-
handleMetricPublisherPublishMessage
protected void handleMetricPublisherPublishMessage(String instanceId, org.apache.heron.proto.system.Metrics.MetricPublisherPublishMessage message)
-
createWakeableLooper
protected org.apache.heron.common.basics.WakeableLooper createWakeableLooper()
-
-