Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

prometheus-haskell Build Status

This repository contains a collection of libraries that can be used to instrument a Haskell application with metrics that can be consumed by the Prometheus monitoring system and time series database.

API documentation can be found on each libraries respective hackage page: prometheus-client, prometheus-metrics-ghc, wai-middleware-prometheus.

The purposes of the libraries are outline below, and an example application can be found under the example folder in the root directory of the git repository.

prometheus-client Hackage

This is the base library that defines the core data types and metrics. It has a few dependencies and is intended to provide the minimum functionality required to interact with Prometheus.

prometheus-metrics-ghc Hackage

This library provides custom metrics that an application can register that expose information from GHC's runtime system. It is provided as a separate package to keep the GHC specific dependencies out of the prometheus-client library.

wai-middleware-prometheus Hackage

This library provides WAI middleware that allows for easy integration of the Prometheus client library into existing WAI apps. The middleware will by default automatically instrument a WAI app with common HTTP metrics and respond to GET requests on the /metrics endpoint.