Class FunctionCollectorRegistry

java.lang.Object
io.prometheus.client.CollectorRegistry
org.apache.pulsar.functions.instance.stats.FunctionCollectorRegistry
Direct Known Subclasses:
FunctionCollectorRegistryImpl

public abstract class FunctionCollectorRegistry extends io.prometheus.client.CollectorRegistry
Internal representation of Prometheus Collector Registry.
  • Field Summary

    Fields inherited from class io.prometheus.client.CollectorRegistry

    defaultRegistry
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
     
    abstract <T extends io.prometheus.client.Collector>
    T
    registerIfNotExist(String metricName, T collector)
    Register a metric if it does not yet exist.

    Methods inherited from class io.prometheus.client.CollectorRegistry

    clear, filteredMetricFamilySamples, filteredMetricFamilySamples, getSampleValue, getSampleValue, metricFamilySamples, register, unregister

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • FunctionCollectorRegistry

      public FunctionCollectorRegistry()
  • Method Details

    • getDefaultImplementation

      public static FunctionCollectorRegistry getDefaultImplementation()
    • registerIfNotExist

      public abstract <T extends io.prometheus.client.Collector> T registerIfNotExist(String metricName, T collector)
      Register a metric if it does not yet exist. If it does exist, then return the existing metric. Currently, only needed by the LocalRunner when running in threaded and exposing metrics via a http server. This method helps resolve the conflict in which multiple instances within the LocalRunner process try to register the same metric.
      Type Parameters:
      T -
      Parameters:
      metricName - the name of the metric
      collector - the metric object e.g. Count, Gauge, etc.
      Returns:
      If the metric with the name `metricName` already exists, return the existing metric object. If not, return null