#pragma once #include #include #include namespace NMonitoring { class TPrometheusDecodeException: public yexception { }; enum class EPrometheusDecodeMode { DEFAULT, RAW }; struct TPrometheusDecodeSettings { EPrometheusDecodeMode Mode{EPrometheusDecodeMode::DEFAULT}; }; IMetricEncoderPtr EncoderPrometheus(IOutputStream* out, TStringBuf metricNameLabel = "sensor"); void DecodePrometheus(TStringBuf data, IMetricConsumer* c, TStringBuf metricNameLabel = "sensor", const TPrometheusDecodeSettings& settings = TPrometheusDecodeSettings{}); }