Skip navigation links

Package org.eclipse.microprofile.metrics.annotation

This package contains the annotations used for MicroProfile Metrics.

See: Description

Package org.eclipse.microprofile.metrics.annotation Description

This package contains the annotations used for MicroProfile Metrics.

Metric Annotation

The Metric annotation is used to provide metadata for the metric being injected. If a metric with the same name exists in the MetricRegistry, the metric is returned. Otherwise, a new metric is registered into the MetricRegistry along with the metadata provided by the @Metric annotation.

For example,

 
      @Inject
      @Metric(name="histogram", description="The description")
     public Histogram histogram;
 
 

Interceptor Bindings

MicroProfile Metrics provides interceptor bindings which can be used to instrument an application: @Counted, @Gauge, @Metered, @Timed, @SimplyTimed and @ConcurrentGauge.

An example using @Counted,

 
      @Counted (name="visitorCount",
         description="The number of visitors to the application")
     public void visit () {
         ...
     }
 
 

An example using @Gauge,

 
      @Gauge(name = "queueSize")
     public int getQueueSize() {
         return queue.size;
     }
 
 

CDI Qualifier

The RegistryType is used to identify which MetricRegistry (Application, Base, or Vendor) should be injected. By default, no RegistryType will inject the application MetricRegistry.

 
       @Inject
       @RegistryType(type=MetricRegistry.Type.BASE)
      MetricRegistry baseRegistry;
 
 
Skip navigation links