class

Prometheus::Histogram

Inherits Prometheus::Metric / Reference / Object

A Histogram samples observations (usually things like request durations or response sizes) and counts them in configurable buckets.

Use a Histogram to track size distributions, such as:

  • Request duration
  • Response sizes
  • Queue length variations

Example:

# Create with custom buckets
histogram = Histogram.new(
  "response_time",
  "Response time in seconds",
  [0.1, 0.5, 1.0, 2.0, 5.0]
)

# Observe values
histogram.observe(0.25)

Histograms track:

  • Count per bucket (number of values <= bucket upper bound)
  • Total sum of all observed values
  • Count of all observed values

Constructors

new(name : String, help : String, buckets : Array(Float64), labels = Labels.new)
Source

Instance methods

collect(io : IO) : Nil
Source
collect
Source
observe(value : Number, labels : Labels | Nil = nil)
Source
type
Source