aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/monlib/metrics/summary_snapshot.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'library/cpp/monlib/metrics/summary_snapshot.cpp')
-rw-r--r--library/cpp/monlib/metrics/summary_snapshot.cpp34
1 files changed, 34 insertions, 0 deletions
diff --git a/library/cpp/monlib/metrics/summary_snapshot.cpp b/library/cpp/monlib/metrics/summary_snapshot.cpp
new file mode 100644
index 0000000000..0b13263337
--- /dev/null
+++ b/library/cpp/monlib/metrics/summary_snapshot.cpp
@@ -0,0 +1,34 @@
+#include "summary_snapshot.h"
+
+#include <util/stream/output.h>
+
+#include <iostream>
+
+
+namespace {
+
+template <typename TStream>
+auto& Output(TStream& o, const NMonitoring::ISummaryDoubleSnapshot& s) {
+ o << TStringBuf("{");
+
+ o << TStringBuf("sum: ") << s.GetSum() << TStringBuf(", ");
+ o << TStringBuf("min: ") << s.GetMin() << TStringBuf(", ");
+ o << TStringBuf("max: ") << s.GetMax() << TStringBuf(", ");
+ o << TStringBuf("last: ") << s.GetLast() << TStringBuf(", ");
+ o << TStringBuf("count: ") << s.GetCount();
+
+ o << TStringBuf("}");
+
+ return o;
+}
+
+} // namespace
+
+std::ostream& operator<<(std::ostream& o, const NMonitoring::ISummaryDoubleSnapshot& s) {
+ return Output(o, s);
+}
+
+template <>
+void Out<NMonitoring::ISummaryDoubleSnapshot>(IOutputStream& o, const NMonitoring::ISummaryDoubleSnapshot& s) {
+ Output(o, s);
+}