Interface BundleProgressReporter
-
- All Known Subinterfaces:
Metrics.BundleCounter,Metrics.BundleDistribution
- All Known Implementing Classes:
BundleProgressReporter.InMemory,ExecutionStateSampler.ExecutionStateTracker
public interface BundleProgressReporterReports metrics related to bundle processing.Each method is guaranteed to be invoked exclusively. The call flow for a single bundle is always:
updateIntermediateMonitoringData(java.util.Map<java.lang.String, org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.ByteString>)* ->updateFinalMonitoringData(java.util.Map<java.lang.String, org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.ByteString>)->reset(). Afterreset(), the progress reporter will be used for another thread.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classBundleProgressReporter.InMemoryAn in-memory bundle progress reporter and registrar.static interfaceBundleProgressReporter.RegistrarMaintains a set ofBundleProgressReporters.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidreset()Reset the monitoring data after a bundle has finished processing to be re-used for a future bundle.voidupdateFinalMonitoringData(java.util.Map<java.lang.String,org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.ByteString> monitoringData)Update the monitoring data for a bundle that has finished processing.voidupdateIntermediateMonitoringData(java.util.Map<java.lang.String,org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.ByteString> monitoringData)Update the monitoring data for a bundle that is currently being processed.
-
-
-
Method Detail
-
updateIntermediateMonitoringData
void updateIntermediateMonitoringData(java.util.Map<java.lang.String,org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.ByteString> monitoringData)
Update the monitoring data for a bundle that is currently being processed.Must be invoked while holding the
ProcessBundleHandler.BundleProcessor.getProgressRequestLock().
-
updateFinalMonitoringData
void updateFinalMonitoringData(java.util.Map<java.lang.String,org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.ByteString> monitoringData)
Update the monitoring data for a bundle that has finished processing.Must be invoked from the main bundle processing thread and while holding the
ProcessBundleHandler.BundleProcessor.getProgressRequestLock().
-
reset
void reset()
Reset the monitoring data after a bundle has finished processing to be re-used for a future bundle.Must be invoked from the main bundle processing thread and while holding the
ProcessBundleHandler.BundleProcessor.getProgressRequestLock().
-
-