Skip to main content

Getting Started

This library is designed to provide a tasteful Scala API for exposing Prometheus metrics using Cats-Effect. It is a mix between Permutive's internal library and Epimetheus. See the design page for more information.

Features​

Quickstart Usage​

This library is currently available for Scala 2.13 and 3.3.

For detailed code examples see the metrics DSL documentation.

To use the latest version, include the following in your build.sbt:

libraryDependencies ++= Seq(
"com.permutive" %% "prometheus4cats" % "6.0.0-RC4",
"com.permutive" %% "prometheus4cats-java" % "6.0.0-RC4"
)
import cats.effect.IO

import prometheus4cats.MetricFactory
import prometheus4cats.javaclient.JavaMetricRegistry

val counterResource =
for {
registry <- JavaMetricRegistry.Builder[IO]().build
factory = MetricFactory.builder.build(registry)
counter <- factory.counter("my_counter_total")
.help("My Counter")
.label[String]("some_label")
.build
} yield counter

counterResource.use { counter => counter.inc(1.0, "Some label value") }