#include <userver/utils/statistics/histogram_aggregator.hpp>
Used to aggregate multiple utils::statistics::Histogram metrics.
Usage example:
Definition at line 20 of file histogram_aggregator.hpp.
Public Member Functions | |
HistogramAggregator (utils::span< const double > upper_bounds) | |
HistogramAggregator (HistogramAggregator &&) noexcept | |
HistogramAggregator & | operator= (HistogramAggregator &&) noexcept |
void | Add (HistogramView other) |
Add the other histogram to the current one. | |
void | AccountAt (std::size_t bucket_index, std::uint64_t count=1) noexcept |
Non-atomically increment the bucket corresponding to the given index. | |
void | AccountInf (std::uint64_t count=1) noexcept |
Non-atomically increment the "infinity" bucket. | |
void | Reset () noexcept |
Reset all buckets to zero. | |
HistogramView | GetView () const &noexcept |
Allows reading the histogram. | |
void utils::statistics::HistogramAggregator::Add | ( | HistogramView | other | ) |
Add the other histogram to the current one.
Bucket borders in this
and other
must be either identical, or bucket borders in this
must be a strict subset of bucket borders in other
.
Writes to *this
are non-atomic.