11#include <userver/utils/not_null.hpp>
12#include <userver/utils/statistics/labels.hpp>
13#include <userver/utils/statistics/metric_value.hpp>
14#include <userver/utils/statistics/storage.hpp>
16USERVER_NAMESPACE_BEGIN
18namespace utils::statistics {
25class MetricQueryError
final :
public std::runtime_error {
27 using std::runtime_error::runtime_error;
36 explicit Snapshot(
const Storage& storage, std::string prefix = {},
37 std::vector<Label> require_labels = {});
39 Snapshot(
const Snapshot& other) =
default;
40 Snapshot(Snapshot&& other)
noexcept =
default;
49 std::vector<Label> require_labels = {})
const;
52 friend void PrintTo(
const Snapshot& data, std::ostream*);
55 utils::SharedRef<
const impl::SnapshotData> data_;
74void PrintTo(
const Snapshot& data, std::ostream*);