Class LegacyMetricRegistryAdapter

  • All Implemented Interfaces:
    org.eclipse.microprofile.metrics.MetricRegistry

    public class LegacyMetricRegistryAdapter
    extends Object
    implements org.eclipse.microprofile.metrics.MetricRegistry
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.eclipse.microprofile.metrics.MetricRegistry

        org.eclipse.microprofile.metrics.MetricRegistry.Type
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addNameToApplicationMap​(org.eclipse.microprofile.metrics.MetricID metricID)  
      void addNameToApplicationMap​(org.eclipse.microprofile.metrics.MetricID metricID, String appName)
      Adds the MetricID to an application map given the application name.
      org.eclipse.microprofile.metrics.Counter counter​(String name)  
      org.eclipse.microprofile.metrics.Counter counter​(String name, org.eclipse.microprofile.metrics.Tag... tags)  
      org.eclipse.microprofile.metrics.Counter counter​(org.eclipse.microprofile.metrics.Metadata metadata)  
      org.eclipse.microprofile.metrics.Counter counter​(org.eclipse.microprofile.metrics.Metadata metadata, org.eclipse.microprofile.metrics.Tag... tags)  
      <T> org.eclipse.microprofile.metrics.Counter counter​(org.eclipse.microprofile.metrics.Metadata metadata, T obj, ToDoubleFunction<T> func, org.eclipse.microprofile.metrics.Tag... tags)
      This is specifically used for runtimes which may need use of a functional counter.
      org.eclipse.microprofile.metrics.Counter counter​(org.eclipse.microprofile.metrics.MetricID metricID)  
      <T extends Number>
      org.eclipse.microprofile.metrics.Gauge<T>
      gauge​(String name, Supplier<T> f)  
      <T extends Number>
      org.eclipse.microprofile.metrics.Gauge<T>
      gauge​(String name, Supplier<T> f, org.eclipse.microprofile.metrics.Tag... tags)  
      <T,​R extends Number>
      org.eclipse.microprofile.metrics.Gauge<R>
      gauge​(String name, T o, Function<T,​R> f, org.eclipse.microprofile.metrics.Tag... tags)  
      <T> org.eclipse.microprofile.metrics.Gauge<Double> gauge​(String name, T o, ToDoubleFunction<T> f)  
      <T> org.eclipse.microprofile.metrics.Gauge<Double> gauge​(String name, T o, ToDoubleFunction<T> f, org.eclipse.microprofile.metrics.Tag... tags)  
      <T extends Number>
      org.eclipse.microprofile.metrics.Gauge<T>
      gauge​(org.eclipse.microprofile.metrics.Metadata metadata, Supplier<T> f, org.eclipse.microprofile.metrics.Tag... tags)  
      <T,​R extends Number>
      org.eclipse.microprofile.metrics.Gauge<R>
      gauge​(org.eclipse.microprofile.metrics.Metadata metadata, T o, Function<T,​R> f, org.eclipse.microprofile.metrics.Tag... tags)  
      <T extends Number>
      org.eclipse.microprofile.metrics.Gauge<T>
      gauge​(org.eclipse.microprofile.metrics.MetricID metricID, Supplier<T> f)  
      <T,​R extends Number>
      org.eclipse.microprofile.metrics.Gauge<R>
      gauge​(org.eclipse.microprofile.metrics.MetricID metricID, T o, Function<T,​R> f)  
      org.eclipse.microprofile.metrics.Counter getCounter​(org.eclipse.microprofile.metrics.MetricID metricID)  
      SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Counter> getCounters()  
      SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Counter> getCounters​(org.eclipse.microprofile.metrics.MetricFilter metricFilter)  
      org.eclipse.microprofile.metrics.Gauge<?> getGauge​(org.eclipse.microprofile.metrics.MetricID metricID)  
      SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Gauge> getGauges()  
      SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Gauge> getGauges​(org.eclipse.microprofile.metrics.MetricFilter metricFilter)  
      org.eclipse.microprofile.metrics.Histogram getHistogram​(org.eclipse.microprofile.metrics.MetricID metricID)  
      SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Histogram> getHistograms()  
      SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Histogram> getHistograms​(org.eclipse.microprofile.metrics.MetricFilter metricFilter)  
      MemberToMetricMappings getMemberToMetricMappings()  
      Map<String,​org.eclipse.microprofile.metrics.Metadata> getMetadata()  
      org.eclipse.microprofile.metrics.Metadata getMetadata​(String name)  
      org.eclipse.microprofile.metrics.Metric getMetric​(org.eclipse.microprofile.metrics.MetricID metricID)  
      <T extends org.eclipse.microprofile.metrics.Metric>
      T
      getMetric​(org.eclipse.microprofile.metrics.MetricID metricID, Class<T> asType)  
      SortedSet<org.eclipse.microprofile.metrics.MetricID> getMetricIDs()  
      Map<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Metric> getMetrics()  
      <T extends org.eclipse.microprofile.metrics.Metric>
      SortedMap<org.eclipse.microprofile.metrics.MetricID,​T>
      getMetrics​(Class<T> ofType, org.eclipse.microprofile.metrics.MetricFilter filter)  
      SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Metric> getMetrics​(org.eclipse.microprofile.metrics.MetricFilter filter)  
      SortedSet<String> getNames()  
      io.micrometer.core.instrument.MeterRegistry getPrometheusMeterRegistry()  
      String getScope()  
      org.eclipse.microprofile.metrics.Timer getTimer​(org.eclipse.microprofile.metrics.MetricID metricID)  
      SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Timer> getTimers()  
      SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Timer> getTimers​(org.eclipse.microprofile.metrics.MetricFilter metricFilter)  
      org.eclipse.microprofile.metrics.Histogram histogram​(String name)  
      org.eclipse.microprofile.metrics.Histogram histogram​(String name, org.eclipse.microprofile.metrics.Tag... tags)  
      org.eclipse.microprofile.metrics.Histogram histogram​(org.eclipse.microprofile.metrics.Metadata metadata)  
      org.eclipse.microprofile.metrics.Histogram histogram​(org.eclipse.microprofile.metrics.Metadata metadata, org.eclipse.microprofile.metrics.Tag... tags)  
      org.eclipse.microprofile.metrics.Histogram histogram​(org.eclipse.microprofile.metrics.MetricID metricID)  
      boolean remove​(String name)  
      boolean remove​(org.eclipse.microprofile.metrics.MetricID metricID)  
      void removeMatching​(org.eclipse.microprofile.metrics.MetricFilter metricFilter)  
      org.eclipse.microprofile.metrics.Tag[] scopeTagsLegacy()  
      org.eclipse.microprofile.metrics.Timer timer​(String name)  
      org.eclipse.microprofile.metrics.Timer timer​(String name, org.eclipse.microprofile.metrics.Tag... tags)  
      org.eclipse.microprofile.metrics.Timer timer​(org.eclipse.microprofile.metrics.Metadata metadata)  
      org.eclipse.microprofile.metrics.Timer timer​(org.eclipse.microprofile.metrics.Metadata metadata, org.eclipse.microprofile.metrics.Tag... tags)  
      org.eclipse.microprofile.metrics.Timer timer​(org.eclipse.microprofile.metrics.MetricID metricID)  
      void unRegisterApplicationMetrics()  
      void unRegisterApplicationMetrics​(String appName)  
      io.micrometer.core.instrument.Tags withAppTags​(org.eclipse.microprofile.metrics.Tag... tags)
      Must be called before any internalGetMetadata calls We may throw an IllegalArgumentException.
    • Constructor Detail

      • LegacyMetricRegistryAdapter

        public LegacyMetricRegistryAdapter​(String scope,
                                           io.micrometer.core.instrument.MeterRegistry registry,
                                           ApplicationNameResolver appNameResolver)
      • LegacyMetricRegistryAdapter

        public LegacyMetricRegistryAdapter​(String scope,
                                           io.micrometer.core.instrument.MeterRegistry registry)
    • Method Detail

      • getPrometheusMeterRegistry

        public io.micrometer.core.instrument.MeterRegistry getPrometheusMeterRegistry()
      • addNameToApplicationMap

        public void addNameToApplicationMap​(org.eclipse.microprofile.metrics.MetricID metricID)
      • addNameToApplicationMap

        public void addNameToApplicationMap​(org.eclipse.microprofile.metrics.MetricID metricID,
                                            String appName)
        Adds the MetricID to an application map given the application name. This map is not a complete list of metrics owned by an application, produced metrics are managed in the MetricsExtension
        Parameters:
        metricID - metric ID of metric that was added
        appName - applicationName
      • unRegisterApplicationMetrics

        public void unRegisterApplicationMetrics()
      • unRegisterApplicationMetrics

        public void unRegisterApplicationMetrics​(String appName)
      • counter

        public org.eclipse.microprofile.metrics.Counter counter​(String name)
        Specified by:
        counter in interface org.eclipse.microprofile.metrics.MetricRegistry
      • counter

        public org.eclipse.microprofile.metrics.Counter counter​(String name,
                                                                org.eclipse.microprofile.metrics.Tag... tags)
        Specified by:
        counter in interface org.eclipse.microprofile.metrics.MetricRegistry
      • counter

        public org.eclipse.microprofile.metrics.Counter counter​(org.eclipse.microprofile.metrics.MetricID metricID)
        Specified by:
        counter in interface org.eclipse.microprofile.metrics.MetricRegistry
      • counter

        public org.eclipse.microprofile.metrics.Counter counter​(org.eclipse.microprofile.metrics.Metadata metadata)
        Specified by:
        counter in interface org.eclipse.microprofile.metrics.MetricRegistry
      • counter

        public org.eclipse.microprofile.metrics.Counter counter​(org.eclipse.microprofile.metrics.Metadata metadata,
                                                                org.eclipse.microprofile.metrics.Tag... tags)
        Specified by:
        counter in interface org.eclipse.microprofile.metrics.MetricRegistry
      • counter

        public <T> org.eclipse.microprofile.metrics.Counter counter​(org.eclipse.microprofile.metrics.Metadata metadata,
                                                                    T obj,
                                                                    ToDoubleFunction<T> func,
                                                                    org.eclipse.microprofile.metrics.Tag... tags)
        This is specifically used for runtimes which may need use of a functional counter. For example, the runtime may want to implement a vendor specific counter metric which relies on values obtained from a Mbeans or MXbeans.
        Type Parameters:
        T - object type
        Parameters:
        metadata - metadata of metric
        obj - object to apply ToDoubleFunction
        func - ToDoubleFunction
        tags - tags of metric
        Returns:
        The functional counter
      • gauge

        public <T> org.eclipse.microprofile.metrics.Gauge<Double> gauge​(String name,
                                                                        T o,
                                                                        ToDoubleFunction<T> f,
                                                                        org.eclipse.microprofile.metrics.Tag... tags)
      • gauge

        public <T,​R extends Number> org.eclipse.microprofile.metrics.Gauge<R> gauge​(String name,
                                                                                          T o,
                                                                                          Function<T,​R> f,
                                                                                          org.eclipse.microprofile.metrics.Tag... tags)
        Specified by:
        gauge in interface org.eclipse.microprofile.metrics.MetricRegistry
      • gauge

        public <T,​R extends Number> org.eclipse.microprofile.metrics.Gauge<R> gauge​(org.eclipse.microprofile.metrics.MetricID metricID,
                                                                                          T o,
                                                                                          Function<T,​R> f)
        Specified by:
        gauge in interface org.eclipse.microprofile.metrics.MetricRegistry
      • gauge

        public <T,​R extends Number> org.eclipse.microprofile.metrics.Gauge<R> gauge​(org.eclipse.microprofile.metrics.Metadata metadata,
                                                                                          T o,
                                                                                          Function<T,​R> f,
                                                                                          org.eclipse.microprofile.metrics.Tag... tags)
        Specified by:
        gauge in interface org.eclipse.microprofile.metrics.MetricRegistry
      • gauge

        public <T extends Number> org.eclipse.microprofile.metrics.Gauge<T> gauge​(String name,
                                                                                  Supplier<T> f)
      • gauge

        public <T extends Number> org.eclipse.microprofile.metrics.Gauge<T> gauge​(String name,
                                                                                  Supplier<T> f,
                                                                                  org.eclipse.microprofile.metrics.Tag... tags)
        Specified by:
        gauge in interface org.eclipse.microprofile.metrics.MetricRegistry
      • gauge

        public <T extends Number> org.eclipse.microprofile.metrics.Gauge<T> gauge​(org.eclipse.microprofile.metrics.MetricID metricID,
                                                                                  Supplier<T> f)
        Specified by:
        gauge in interface org.eclipse.microprofile.metrics.MetricRegistry
      • gauge

        public <T extends Number> org.eclipse.microprofile.metrics.Gauge<T> gauge​(org.eclipse.microprofile.metrics.Metadata metadata,
                                                                                  Supplier<T> f,
                                                                                  org.eclipse.microprofile.metrics.Tag... tags)
        Specified by:
        gauge in interface org.eclipse.microprofile.metrics.MetricRegistry
      • histogram

        public org.eclipse.microprofile.metrics.Histogram histogram​(String name)
        Specified by:
        histogram in interface org.eclipse.microprofile.metrics.MetricRegistry
      • histogram

        public org.eclipse.microprofile.metrics.Histogram histogram​(String name,
                                                                    org.eclipse.microprofile.metrics.Tag... tags)
        Specified by:
        histogram in interface org.eclipse.microprofile.metrics.MetricRegistry
      • histogram

        public org.eclipse.microprofile.metrics.Histogram histogram​(org.eclipse.microprofile.metrics.MetricID metricID)
        Specified by:
        histogram in interface org.eclipse.microprofile.metrics.MetricRegistry
      • histogram

        public org.eclipse.microprofile.metrics.Histogram histogram​(org.eclipse.microprofile.metrics.Metadata metadata)
        Specified by:
        histogram in interface org.eclipse.microprofile.metrics.MetricRegistry
      • histogram

        public org.eclipse.microprofile.metrics.Histogram histogram​(org.eclipse.microprofile.metrics.Metadata metadata,
                                                                    org.eclipse.microprofile.metrics.Tag... tags)
        Specified by:
        histogram in interface org.eclipse.microprofile.metrics.MetricRegistry
      • timer

        public org.eclipse.microprofile.metrics.Timer timer​(String name)
        Specified by:
        timer in interface org.eclipse.microprofile.metrics.MetricRegistry
      • timer

        public org.eclipse.microprofile.metrics.Timer timer​(String name,
                                                            org.eclipse.microprofile.metrics.Tag... tags)
        Specified by:
        timer in interface org.eclipse.microprofile.metrics.MetricRegistry
      • timer

        public org.eclipse.microprofile.metrics.Timer timer​(org.eclipse.microprofile.metrics.MetricID metricID)
        Specified by:
        timer in interface org.eclipse.microprofile.metrics.MetricRegistry
      • timer

        public org.eclipse.microprofile.metrics.Timer timer​(org.eclipse.microprofile.metrics.Metadata metadata)
        Specified by:
        timer in interface org.eclipse.microprofile.metrics.MetricRegistry
      • timer

        public org.eclipse.microprofile.metrics.Timer timer​(org.eclipse.microprofile.metrics.Metadata metadata,
                                                            org.eclipse.microprofile.metrics.Tag... tags)
        Specified by:
        timer in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getMetric

        public org.eclipse.microprofile.metrics.Metric getMetric​(org.eclipse.microprofile.metrics.MetricID metricID)
        Specified by:
        getMetric in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getMetric

        public <T extends org.eclipse.microprofile.metrics.Metric> T getMetric​(org.eclipse.microprofile.metrics.MetricID metricID,
                                                                               Class<T> asType)
        Specified by:
        getMetric in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getCounter

        public org.eclipse.microprofile.metrics.Counter getCounter​(org.eclipse.microprofile.metrics.MetricID metricID)
        Specified by:
        getCounter in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getGauge

        public org.eclipse.microprofile.metrics.Gauge<?> getGauge​(org.eclipse.microprofile.metrics.MetricID metricID)
        Specified by:
        getGauge in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getHistogram

        public org.eclipse.microprofile.metrics.Histogram getHistogram​(org.eclipse.microprofile.metrics.MetricID metricID)
        Specified by:
        getHistogram in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getTimer

        public org.eclipse.microprofile.metrics.Timer getTimer​(org.eclipse.microprofile.metrics.MetricID metricID)
        Specified by:
        getTimer in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getMetadata

        public org.eclipse.microprofile.metrics.Metadata getMetadata​(String name)
        Specified by:
        getMetadata in interface org.eclipse.microprofile.metrics.MetricRegistry
      • remove

        public boolean remove​(String name)
        Specified by:
        remove in interface org.eclipse.microprofile.metrics.MetricRegistry
      • remove

        public boolean remove​(org.eclipse.microprofile.metrics.MetricID metricID)
        Specified by:
        remove in interface org.eclipse.microprofile.metrics.MetricRegistry
      • removeMatching

        public void removeMatching​(org.eclipse.microprofile.metrics.MetricFilter metricFilter)
        Specified by:
        removeMatching in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getNames

        public SortedSet<String> getNames()
        Specified by:
        getNames in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getMetricIDs

        public SortedSet<org.eclipse.microprofile.metrics.MetricID> getMetricIDs()
        Specified by:
        getMetricIDs in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getGauges

        public SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Gauge> getGauges()
        Specified by:
        getGauges in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getGauges

        public SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Gauge> getGauges​(org.eclipse.microprofile.metrics.MetricFilter metricFilter)
        Specified by:
        getGauges in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getCounters

        public SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Counter> getCounters()
        Specified by:
        getCounters in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getCounters

        public SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Counter> getCounters​(org.eclipse.microprofile.metrics.MetricFilter metricFilter)
        Specified by:
        getCounters in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getHistograms

        public SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Histogram> getHistograms()
        Specified by:
        getHistograms in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getHistograms

        public SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Histogram> getHistograms​(org.eclipse.microprofile.metrics.MetricFilter metricFilter)
        Specified by:
        getHistograms in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getTimers

        public SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Timer> getTimers()
        Specified by:
        getTimers in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getTimers

        public SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Timer> getTimers​(org.eclipse.microprofile.metrics.MetricFilter metricFilter)
        Specified by:
        getTimers in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getMetrics

        public SortedMap<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Metric> getMetrics​(org.eclipse.microprofile.metrics.MetricFilter filter)
        Specified by:
        getMetrics in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getMetrics

        public <T extends org.eclipse.microprofile.metrics.Metric> SortedMap<org.eclipse.microprofile.metrics.MetricID,​T> getMetrics​(Class<T> ofType,
                                                                                                                                           org.eclipse.microprofile.metrics.MetricFilter filter)
        Specified by:
        getMetrics in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getMetrics

        public Map<org.eclipse.microprofile.metrics.MetricID,​org.eclipse.microprofile.metrics.Metric> getMetrics()
        Specified by:
        getMetrics in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getMetadata

        public Map<String,​org.eclipse.microprofile.metrics.Metadata> getMetadata()
        Specified by:
        getMetadata in interface org.eclipse.microprofile.metrics.MetricRegistry
      • getScope

        public String getScope()
        Specified by:
        getScope in interface org.eclipse.microprofile.metrics.MetricRegistry
      • withAppTags

        public io.micrometer.core.instrument.Tags withAppTags​(org.eclipse.microprofile.metrics.Tag... tags)
        Must be called before any internalGetMetadata calls We may throw an IllegalArgumentException. So we don't want metadata to be registered if it was not necessary.
        Parameters:
        tags - Tags to be combined with
        Returns:
        tags combined with mp_scope and mp_app if available
      • scopeTagsLegacy

        public org.eclipse.microprofile.metrics.Tag[] scopeTagsLegacy()