Supported Monitoring Systems

Micrometer contains a core module with an instrumentation SPI, a set of modules containing implementations for various monitoring systems (each is called a registry), and a test kit. You need to understand three important characteristics of monitoring systems:

  • Dimensionality. Whether the system supports metric names to be enriched with tag key/value pairs. If a system is not dimensional, it is hierarchical, which means it supports only a flat metric name. When publishing metrics to hierarchical systems, Micrometer flattens the set of tag key/value pairs and adds them to the name.

Dimensional Hierarchical

AppOptics, Atlas, Azure Monitor, Cloudwatch, Datadog, Datadog StatsD, Dynatrace, Elastic, Humio, Influx, KairosDB, New Relic, Prometheus, SignalFx, Sysdig StatsD, Telegraf StatsD, Wavefront

Graphite, Ganglia, JMX, Etsy StatsD

  • Rate Aggregation. In this context, we mean aggregation of a set of samples over a prescribed time interval. Some monitoring systems expect some types of discrete samples (such as counts) to be converted to a rate by the application prior to being published. Other systems expect cumulative values to always be sent. Still others have no opinion on it either way.

Client-side Server-side

AppOptics, Atlas, Azure Monitor, Datadog, Dynatrace, Elastic, Graphite, Ganglia, Humio, Influx, JMX, Kairos, New Relic, all StatsD flavors, SignalFx

Prometheus, Wavefront [1]

  • Publishing. Some systems expect to poll applications for metrics at their leisure, while others expect metrics to be pushed to them on a regular interval.

Client pushes Server polls

AppOptics, Atlas, Azure Monitor, Datadog, Dynatrace, Elastic, Graphite, Ganglia, Humio, Influx, JMX, Kairos, New Relic, SignalFx, Wavefront

Prometheus, all StatsD flavors

There are other, more minor, variations in expectations from one monitoring system to another, such as their conception of base units of measurement (particularly time) and the canonical naming convention for metrics. Micrometer customizes your metrics to meet these demands on a per-registry basis.


1. As of 1.2.0, Micrometer sends cumulative values to Wavefront.