Custom Metrics for Actuator Prometheus

Dullimeister picture Dullimeister · May 18, 2018 · Viewed 6.9k times · Source

I have activated the spring actuator prometheus endpont /actuator/prometheus. By adding the dependencies for micrometer and actuator and enabled prometheus endpont. How can i get there custom metrics?

Answer

ahus1 picture ahus1 · May 19, 2018

You'll need to register your metrics with the Micrometer Registry.

The following example creates the metrics in the constructor. The Micrometer Registry is injected as a constructor parameter:

@Component
public class MyComponent {

    private final Counter myCounter;

    public MyComponent(MeterRegistry registry) {
        myCounter = Counter
                .builder("mycustomcounter")
                .description("this is my custom counter")
                .register(registry);
    }

    public String countedCall() {
        myCounter.increment();
    }
}

Once this is available, you'll have a metric mycustomcounter_total in the registry available in the /prometheus URL. The suffix "total" is added to comply with the Prometheus naming conventions.