Class MicrometerMetrics

java.lang.Object
io.javaoperatorsdk.operator.monitoring.micrometer.MicrometerMetrics
All Implemented Interfaces:
Metrics

public class MicrometerMetrics extends Object implements Metrics
  • Method Details

    • withoutPerResourceMetrics

      public static MicrometerMetrics withoutPerResourceMetrics(io.micrometer.core.instrument.MeterRegistry registry)
      Creates a MicrometerMetrics instance configured to not collect per-resource metrics, just aggregates per resource **type**
      Parameters:
      registry - the MeterRegistry instance to use for metrics recording
      Returns:
      a MicrometerMetrics instance configured to not collect per-resource metrics
    • newMicrometerMetricsBuilder

      public static MicrometerMetrics.MicrometerMetricsBuilder newMicrometerMetricsBuilder(io.micrometer.core.instrument.MeterRegistry registry)
      Creates a new builder to configure how the eventual MicrometerMetrics instance will behave.
      Parameters:
      registry - the MeterRegistry instance to use for metrics recording
      Returns:
      a MicrometerMetrics instance configured to not collect per-resource metrics
      See Also:
    • newPerResourceCollectingMicrometerMetricsBuilder

      public static MicrometerMetrics.PerResourceCollectingMicrometerMetricsBuilder newPerResourceCollectingMicrometerMetricsBuilder(io.micrometer.core.instrument.MeterRegistry registry)
      Creates a new builder to configure how the eventual MicrometerMetrics instance will behave, pre-configuring it to collect metrics per resource.
      Parameters:
      registry - the MeterRegistry instance to use for metrics recording
      Returns:
      a MicrometerMetrics instance configured to not collect per-resource metrics
      See Also:
    • controllerRegistered

      public void controllerRegistered(Controller<? extends io.fabric8.kubernetes.api.model.HasMetadata> controller)
      Specified by:
      controllerRegistered in interface Metrics
    • timeControllerExecution

      public <T> T timeControllerExecution(Metrics.ControllerExecution<T> execution)
      Specified by:
      timeControllerExecution in interface Metrics
    • receivedEvent

      public void receivedEvent(Event event, Map<String,Object> metadata)
      Specified by:
      receivedEvent in interface Metrics
    • cleanupDoneFor

      public void cleanupDoneFor(ResourceID resourceID, Map<String,Object> metadata)
      Specified by:
      cleanupDoneFor in interface Metrics
    • reconcileCustomResource

      public void reconcileCustomResource(io.fabric8.kubernetes.api.model.HasMetadata resource, RetryInfo retryInfoNullable, Map<String,Object> metadata)
      Specified by:
      reconcileCustomResource in interface Metrics
    • finishedReconciliation

      public void finishedReconciliation(io.fabric8.kubernetes.api.model.HasMetadata resource, Map<String,Object> metadata)
      Specified by:
      finishedReconciliation in interface Metrics
    • reconciliationExecutionStarted

      public void reconciliationExecutionStarted(io.fabric8.kubernetes.api.model.HasMetadata resource, Map<String,Object> metadata)
      Specified by:
      reconciliationExecutionStarted in interface Metrics
    • reconciliationExecutionFinished

      public void reconciliationExecutionFinished(io.fabric8.kubernetes.api.model.HasMetadata resource, Map<String,Object> metadata)
      Specified by:
      reconciliationExecutionFinished in interface Metrics
    • failedReconciliation

      public void failedReconciliation(io.fabric8.kubernetes.api.model.HasMetadata resource, Exception exception, Map<String,Object> metadata)
      Specified by:
      failedReconciliation in interface Metrics
    • monitorSizeOf

      public <T extends Map<?, ?>> T monitorSizeOf(T map, String name)
      Specified by:
      monitorSizeOf in interface Metrics
    • recordedMeterIdsFor

      protected Set<io.micrometer.core.instrument.Meter.Id> recordedMeterIdsFor(ResourceID resourceID)