Class StreamMetricsComputation

java.lang.Object
org.nuxeo.lib.stream.computation.AbstractComputation
org.nuxeo.runtime.stream.StreamMetricsComputation
All Implemented Interfaces:
Computation

public class StreamMetricsComputation extends AbstractComputation
A computation that exposes Nuxeo Stream metrics as Dropwizard metrics.
Since:
11.1
  • Field Details

  • Constructor Details

    • StreamMetricsComputation

      public StreamMetricsComputation(Duration interval, List<String> streams)
  • Method Details

    • init

      public void init(ComputationContext context)
      Description copied from interface: Computation
      Called when the framework has registered the computation successfully. Gives users a first opportunity to schedule timer callbacks and produce records. This method can be called multiple times.
      Specified by:
      init in interface Computation
      Overrides:
      init in class AbstractComputation
      Parameters:
      context - The computation context object provided by the system.
    • destroy

      public void destroy()
      Description copied from interface: Computation
      Called when the framework is ready to shutdown the computation. Gives users a chance to perform some cleanup before the process is killed.
    • registerMetrics

      protected void registerMetrics()
    • unregisterMetrics

      protected void unregisterMetrics()
    • processTimer

      public void processTimer(ComputationContext context, String key, long timestamp)
      Description copied from interface: Computation
      Process a timer callback previously set via ComputationContext.setTimer(String, long).
      Specified by:
      processTimer in interface Computation
      Overrides:
      processTimer in class AbstractComputation
      Parameters:
      context - The computation context object provided by the system.
      key - The name of the timer.
      timestamp - The timestamp (in ms) for which the callback was scheduled.
    • refreshMetricsIfNeeded

      protected void refreshMetricsIfNeeded()
    • getStreams

      protected List<Name> getStreams()
    • getGroups

      protected List<LogPartitionGroup> getGroups()
    • getManager

      protected LogManager getManager()
    • processRecord

      public void processRecord(ComputationContext context, String inputStreamName, Record record)
      Description copied from interface: Computation
      Process an incoming record on one of the computation's input streams.
      Parameters:
      context - The computation context object provided by the system.
      inputStreamName - Name of the input stream that provides the record.
      record - The record.