diff options
author | Alexander Smirnov <alex@ydb.tech> | 2025-03-07 00:51:42 +0000 |
---|---|---|
committer | Alexander Smirnov <alex@ydb.tech> | 2025-03-07 00:51:42 +0000 |
commit | 26f81abb45fa0b914da68e22b79c4b8ba8ac105b (patch) | |
tree | 2dd0455697e85b89272f2d4197703cb92f33958e /library/cpp/monlib/encode/json/json_encoder.cpp | |
parent | 98be31c26bacbdc98081620b680a520f0bd0246f (diff) | |
parent | 9b0a13bddce49bfb5ea59d8c4a668d32d7dada3b (diff) | |
download | ydb-26f81abb45fa0b914da68e22b79c4b8ba8ac105b.tar.gz |
Merge branch 'rightlib' into merge-libs-250307-0050
Diffstat (limited to 'library/cpp/monlib/encode/json/json_encoder.cpp')
-rw-r--r-- | library/cpp/monlib/encode/json/json_encoder.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/library/cpp/monlib/encode/json/json_encoder.cpp b/library/cpp/monlib/encode/json/json_encoder.cpp index 69da5170f0d..2af058155a8 100644 --- a/library/cpp/monlib/encode/json/json_encoder.cpp +++ b/library/cpp/monlib/encode/json/json_encoder.cpp @@ -274,6 +274,14 @@ namespace NMonitoring { WriteMetricType(type); } + void OnMemOnly(bool isMemOnly) override { + State_.Expect(TEncoderState::EState::METRIC); + if (isMemOnly) { + Buf_.WriteKey("memOnly"); + Buf_.WriteBool(isMemOnly); + } + } + void OnMetricEnd() override { State_.Switch(TEncoderState::EState::METRIC, TEncoderState::EState::ROOT); if (!Buf_.KeyExpected()) { @@ -493,6 +501,7 @@ namespace NMonitoring { Buf_.WriteKey(TStringBuf("labels")); WriteLabels(metric.Labels, false); + WriteFlags(metric); metric.TimeSeries.SortByTs(); if (metric.TimeSeries.Size() == 1) { const auto& point = metric.TimeSeries[0]; @@ -532,6 +541,13 @@ namespace NMonitoring { } } + void WriteFlags(const TMetric& metric) { + if (metric.IsMemOnly) { + Buf_.WriteKey("memOnly"); + Buf_.WriteBool(true); + } + } + private: bool Closed_{false}; bool EmptyLabels_ = false; |