Overview
Classes: AtomicFloat, CallbackMetric, Collector, Counter, CounterSample, Exporter, Gauge, GaugeSample, Histogram, HistogramData, HistogramSample, IntCounter, IntGauge, LabeledMetric, LabeledMetricImpl, Metric, MetricsRequestHandler, MetricsServer, ProcessCollector, Registry, TextExporter, ThreadPoolCollector
Types Aliases: CallbackCounter, CallbackGauge, CallbackIntCounter, CallbackIntGauge
Classes
class AtomicFloat
This class provides efficient atomic operations on float and double values.
class CallbackMetric
A generic Metric implementation where the sample is obtained via a callback function or lambda.
class Collector
This is the base class for all metrics, such as Counter, Gauge and Histogram.
class Counter
A generic counter supporting labels.
class CounterSample
class Exporter
The Exporter interface is used to format and write metrics to an output stream.
class Gauge
A generic gauge supporting labels.
class GaugeSample
class Histogram
A histogram with a configurable number of buckets.
struct HistogramData
class HistogramSample
class IntCounter
IntCounter is a very low overhead implementation of a Counter, supporting 64-bit unsigned integer values only, using std::atomic Labels are not supported.
class IntGauge
IntGauge is a very low overhead implementation of a Gauge, supporting 64-bit integer values only, using std::atomic.
class LabeledMetric
This class adds support for labels to the basic Metric class.
class LabeledMetricImpl
A helper class for implementing LabeledMetric classes such as Counter, Gauge and Histogram.
class Metric
This is the base class for all metrics, such as Counter, Gauge and Histogram.
class MetricsRequestHandler
This class handles incoming HTTP requests for metrics in the Prometheus text format.
class MetricsServer
A basic HTTP server for handling Prometheus metrics scraping requests, based on Poco::Net::HTTPServer.
class ProcessCollector
This Collector provides process-specific metrics: - process_cpu_seconds_total: Total user and system CPU time spent in seconds.
class Registry
The metric registry is a collection of all active Collector instances.
class TextExporter
Exporter implementation for the Prometheus text format.
class ThreadPoolCollector
This Collector provides Poco::ThreadPool specific metrics: - poco_threadpool_max_threads: Maximum number of threads available in the thread pool (capacity).
Types Aliases
CallbackCounter
using CallbackCounter = CallbackMetric < double, Metric::Type::COUNTER >;
CallbackGauge
using CallbackGauge = CallbackMetric < double, Metric::Type::GAUGE >;
CallbackIntCounter
using CallbackIntCounter = CallbackMetric < Poco::UInt64, Metric::Type::COUNTER >;
CallbackIntGauge
using CallbackIntGauge = CallbackMetric < Poco::Int64, Metric::Type::GAUGE >;