diff options
author | ienkovich <ienkovich@yandex-team.ru> | 2022-02-10 16:47:49 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:47:49 +0300 |
commit | 5bd76e73fa8dd777999be2668ff56928cc3dbecb (patch) | |
tree | cee73b6c84f7566d11209bd978e29a7fd9ccec54 /library/cpp/monlib | |
parent | b031b9d140bcd39f4ef2764e24d37bee317aaf23 (diff) | |
download | ydb-5bd76e73fa8dd777999be2668ff56928cc3dbecb.tar.gz |
Restoring authorship annotation for <ienkovich@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'library/cpp/monlib')
-rw-r--r-- | library/cpp/monlib/dynamic_counters/counters.cpp | 54 | ||||
-rw-r--r-- | library/cpp/monlib/dynamic_counters/counters.h | 22 | ||||
-rw-r--r-- | library/cpp/monlib/dynamic_counters/counters_ut.cpp | 248 | ||||
-rw-r--r-- | library/cpp/monlib/service/service.cpp | 6 | ||||
-rw-r--r-- | library/cpp/monlib/service/service.h | 2 |
5 files changed, 166 insertions, 166 deletions
diff --git a/library/cpp/monlib/dynamic_counters/counters.cpp b/library/cpp/monlib/dynamic_counters/counters.cpp index 3635d87d0d..9e7a970267 100644 --- a/library/cpp/monlib/dynamic_counters/counters.cpp +++ b/library/cpp/monlib/dynamic_counters/counters.cpp @@ -102,17 +102,17 @@ THistogramPtr TDynamicCounters::FindNamedHistogram(const TString& name,const TSt return AsHistogramRef(FindNamedCounterImpl<THistogramCounter>(name, value)); } -void TDynamicCounters::RemoveCounter(const TString &value) { - RemoveNamedCounter("sensor", value); -} - -void TDynamicCounters::RemoveNamedCounter(const TString& name, const TString &value) { +void TDynamicCounters::RemoveCounter(const TString &value) { + RemoveNamedCounter("sensor", value); +} + +void TDynamicCounters::RemoveNamedCounter(const TString& name, const TString &value) { auto g = LockForUpdate("RemoveNamedCounter", name, value); if (const auto it = Counters.find({name, value}); it != Counters.end() && AsCounter(it->second)) { - Counters.erase(it); + Counters.erase(it); } -} - +} + TIntrusivePtr<TDynamicCounters> TDynamicCounters::GetSubgroup(const TString& name, const TString& value) { auto res = FindSubgroup(name, value); if (!res) { @@ -134,21 +134,21 @@ TIntrusivePtr<TDynamicCounters> TDynamicCounters::FindSubgroup(const TString& na return it != Counters.end() ? AsDynamicCounters(it->second) : nullptr; } -void TDynamicCounters::RemoveSubgroup(const TString& name, const TString& value) { +void TDynamicCounters::RemoveSubgroup(const TString& name, const TString& value) { auto g = LockForUpdate("RemoveSubgroup", name, value); if (const auto it = Counters.find({name, value}); it != Counters.end() && AsDynamicCounters(it->second)) { - Counters.erase(it); + Counters.erase(it); } -} - +} + void TDynamicCounters::ReplaceSubgroup(const TString& name, const TString& value, TIntrusivePtr<TDynamicCounters> subgroup) { auto g = LockForUpdate("ReplaceSubgroup", name, value); const auto it = Counters.find({name, value}); Y_VERIFY(it != Counters.end() && AsDynamicCounters(it->second)); it->second = std::move(subgroup); -} - -void TDynamicCounters::MergeWithSubgroup(const TString& name, const TString& value) { +} + +void TDynamicCounters::MergeWithSubgroup(const TString& name, const TString& value) { auto g = LockForUpdate("MergeWithSubgroup", name, value); auto it = Counters.find({name, value}); Y_VERIFY(it != Counters.end()); @@ -159,30 +159,30 @@ void TDynamicCounters::MergeWithSubgroup(const TString& name, const TString& val AtomicAdd(ExpiringCount, AtomicSwap(&subgroup->ExpiringCount, 0)); } -void TDynamicCounters::ResetCounters(bool derivOnly) { +void TDynamicCounters::ResetCounters(bool derivOnly) { TReadGuard g(Lock); for (auto& [key, value] : Counters) { if (auto counter = AsCounter(value)) { if (!derivOnly || counter->ForDerivative()) { - *counter = 0; + *counter = 0; } } else if (auto subgroup = AsDynamicCounters(value)) { - subgroup->ResetCounters(derivOnly); - } - } -} - + subgroup->ResetCounters(derivOnly); + } + } +} + void TDynamicCounters::RegisterCountable(const TString& name, const TString& value, TCountablePtr countable) { Y_VERIFY(countable); auto g = LockForUpdate("RegisterCountable", name, value); const bool inserted = Counters.emplace(TChildId(name, value), std::move(countable)).second; Y_VERIFY(inserted); -} - -void TDynamicCounters::RegisterSubgroup(const TString& name, const TString& value, TIntrusivePtr<TDynamicCounters> subgroup) { +} + +void TDynamicCounters::RegisterSubgroup(const TString& name, const TString& value, TIntrusivePtr<TDynamicCounters> subgroup) { RegisterCountable(name, value, subgroup); -} - +} + void TDynamicCounters::OutputHtml(IOutputStream& os) const { HTML(os) { PRE() { diff --git a/library/cpp/monlib/dynamic_counters/counters.h b/library/cpp/monlib/dynamic_counters/counters.h index dc178cfbe0..1178703786 100644 --- a/library/cpp/monlib/dynamic_counters/counters.h +++ b/library/cpp/monlib/dynamic_counters/counters.h @@ -326,19 +326,19 @@ namespace NMonitoring { THistogramPtr FindHistogram(const TString& value) const; THistogramPtr FindNamedHistogram(const TString& name,const TString& value) const; - void RemoveCounter(const TString &value); - void RemoveNamedCounter(const TString& name, const TString &value); + void RemoveCounter(const TString &value); + void RemoveNamedCounter(const TString& name, const TString &value); TIntrusivePtr<TDynamicCounters> GetSubgroup(const TString& name, const TString& value); TIntrusivePtr<TDynamicCounters> FindSubgroup(const TString& name, const TString& value) const; - void RemoveSubgroup(const TString& name, const TString& value); - void ReplaceSubgroup(const TString& name, const TString& value, TIntrusivePtr<TDynamicCounters> subgroup); - - // Move all counters from specified subgroup and remove the subgroup. - void MergeWithSubgroup(const TString& name, const TString& value); - // Recursively reset all/deriv counters to 0. - void ResetCounters(bool derivOnly = false); - + void RemoveSubgroup(const TString& name, const TString& value); + void ReplaceSubgroup(const TString& name, const TString& value, TIntrusivePtr<TDynamicCounters> subgroup); + + // Move all counters from specified subgroup and remove the subgroup. + void MergeWithSubgroup(const TString& name, const TString& value); + // Recursively reset all/deriv counters to 0. + void ResetCounters(bool derivOnly = false); + void RegisterSubgroup(const TString& name, const TString& value, TIntrusivePtr<TDynamicCounters> subgroup); @@ -363,7 +363,7 @@ namespace NMonitoring { void RegisterCountable(const TString& name, const TString& value, TCountablePtr countable); void RemoveExpired() const; - + template <bool expiring, class TCounterType, class... TArgs> TCountablePtr GetNamedCounterImpl(const TString& name, const TString& value, TArgs&&... args); diff --git a/library/cpp/monlib/dynamic_counters/counters_ut.cpp b/library/cpp/monlib/dynamic_counters/counters_ut.cpp index 3591037e0a..dfbf76010b 100644 --- a/library/cpp/monlib/dynamic_counters/counters_ut.cpp +++ b/library/cpp/monlib/dynamic_counters/counters_ut.cpp @@ -96,134 +96,134 @@ Y_UNIT_TEST_SUITE(TDynamicCountersTest) { " users:count = 7\n" "}\n"); } - + Y_UNIT_TEST(MergeSubgroup) { - TDynamicCounterPtr rootGroup(new TDynamicCounters()); - - auto sensor1 = rootGroup->GetNamedCounter("sensor", "1"); - *sensor1 = 1; - - auto group1 = rootGroup->GetSubgroup("group", "1"); - auto sensor2 = group1->GetNamedCounter("sensor", "2"); - *sensor2 = 2; - - auto group2 = group1->GetSubgroup("group", "2"); - auto sensor3 = group2->GetNamedCounter("sensor", "3"); - *sensor3 = 3; - - rootGroup->MergeWithSubgroup("group", "1"); - - TStringStream ss; - TCountersPrinter printer(&ss); - rootGroup->Accept("root", "counters", printer); - - UNIT_ASSERT_STRINGS_EQUAL(ss.Str(), - "root:counters {\n" - " group:2 {\n" - " sensor:3 = 3\n" - " }\n" - " sensor:1 = 1\n" - " sensor:2 = 2\n" - "}\n"); - } - + TDynamicCounterPtr rootGroup(new TDynamicCounters()); + + auto sensor1 = rootGroup->GetNamedCounter("sensor", "1"); + *sensor1 = 1; + + auto group1 = rootGroup->GetSubgroup("group", "1"); + auto sensor2 = group1->GetNamedCounter("sensor", "2"); + *sensor2 = 2; + + auto group2 = group1->GetSubgroup("group", "2"); + auto sensor3 = group2->GetNamedCounter("sensor", "3"); + *sensor3 = 3; + + rootGroup->MergeWithSubgroup("group", "1"); + + TStringStream ss; + TCountersPrinter printer(&ss); + rootGroup->Accept("root", "counters", printer); + + UNIT_ASSERT_STRINGS_EQUAL(ss.Str(), + "root:counters {\n" + " group:2 {\n" + " sensor:3 = 3\n" + " }\n" + " sensor:1 = 1\n" + " sensor:2 = 2\n" + "}\n"); + } + Y_UNIT_TEST(ResetCounters) { - TDynamicCounterPtr rootGroup(new TDynamicCounters()); - - auto sensor1 = rootGroup->GetNamedCounter("sensor", "1"); - *sensor1 = 1; - - auto group1 = rootGroup->GetSubgroup("group", "1"); - auto sensor2 = group1->GetNamedCounter("sensor", "2"); - *sensor2 = 2; - - auto group2 = group1->GetSubgroup("group", "2"); - auto sensor3 = group2->GetNamedCounter("sensor", "3", true); - *sensor3 = 3; - - rootGroup->ResetCounters(true); - - TStringStream ss1; - TCountersPrinter printer1(&ss1); - rootGroup->Accept("root", "counters", printer1); - - UNIT_ASSERT_STRINGS_EQUAL(ss1.Str(), - "root:counters {\n" - " group:1 {\n" - " group:2 {\n" - " sensor:3 = 0\n" - " }\n" - " sensor:2 = 2\n" - " }\n" - " sensor:1 = 1\n" - "}\n"); - - rootGroup->ResetCounters(); - - TStringStream ss2; - TCountersPrinter printer2(&ss2); - rootGroup->Accept("root", "counters", printer2); - - UNIT_ASSERT_STRINGS_EQUAL(ss2.Str(), - "root:counters {\n" - " group:1 {\n" - " group:2 {\n" - " sensor:3 = 0\n" - " }\n" - " sensor:2 = 0\n" - " }\n" - " sensor:1 = 0\n" - "}\n"); - } - + TDynamicCounterPtr rootGroup(new TDynamicCounters()); + + auto sensor1 = rootGroup->GetNamedCounter("sensor", "1"); + *sensor1 = 1; + + auto group1 = rootGroup->GetSubgroup("group", "1"); + auto sensor2 = group1->GetNamedCounter("sensor", "2"); + *sensor2 = 2; + + auto group2 = group1->GetSubgroup("group", "2"); + auto sensor3 = group2->GetNamedCounter("sensor", "3", true); + *sensor3 = 3; + + rootGroup->ResetCounters(true); + + TStringStream ss1; + TCountersPrinter printer1(&ss1); + rootGroup->Accept("root", "counters", printer1); + + UNIT_ASSERT_STRINGS_EQUAL(ss1.Str(), + "root:counters {\n" + " group:1 {\n" + " group:2 {\n" + " sensor:3 = 0\n" + " }\n" + " sensor:2 = 2\n" + " }\n" + " sensor:1 = 1\n" + "}\n"); + + rootGroup->ResetCounters(); + + TStringStream ss2; + TCountersPrinter printer2(&ss2); + rootGroup->Accept("root", "counters", printer2); + + UNIT_ASSERT_STRINGS_EQUAL(ss2.Str(), + "root:counters {\n" + " group:1 {\n" + " group:2 {\n" + " sensor:3 = 0\n" + " }\n" + " sensor:2 = 0\n" + " }\n" + " sensor:1 = 0\n" + "}\n"); + } + Y_UNIT_TEST(RemoveCounter) { - TDynamicCounterPtr rootGroup(new TDynamicCounters()); - - rootGroup->GetNamedCounter("label", "1"); - rootGroup->GetCounter("2"); - rootGroup->GetCounter("3"); - rootGroup->GetSubgroup("group", "1"); - - rootGroup->RemoveNamedCounter("label", "1"); - rootGroup->RemoveNamedCounter("label", "5"); - rootGroup->RemoveNamedCounter("group", "1"); - rootGroup->RemoveCounter("2"); - rootGroup->RemoveCounter("5"); - - TStringStream ss; - TCountersPrinter printer(&ss); - rootGroup->Accept("root", "counters", printer); - - UNIT_ASSERT_STRINGS_EQUAL(ss.Str(), - "root:counters {\n" - " group:1 {\n" - " }\n" - " sensor:3 = 0\n" - "}\n"); - } - + TDynamicCounterPtr rootGroup(new TDynamicCounters()); + + rootGroup->GetNamedCounter("label", "1"); + rootGroup->GetCounter("2"); + rootGroup->GetCounter("3"); + rootGroup->GetSubgroup("group", "1"); + + rootGroup->RemoveNamedCounter("label", "1"); + rootGroup->RemoveNamedCounter("label", "5"); + rootGroup->RemoveNamedCounter("group", "1"); + rootGroup->RemoveCounter("2"); + rootGroup->RemoveCounter("5"); + + TStringStream ss; + TCountersPrinter printer(&ss); + rootGroup->Accept("root", "counters", printer); + + UNIT_ASSERT_STRINGS_EQUAL(ss.Str(), + "root:counters {\n" + " group:1 {\n" + " }\n" + " sensor:3 = 0\n" + "}\n"); + } + Y_UNIT_TEST(RemoveSubgroup) { - TDynamicCounterPtr rootGroup(new TDynamicCounters()); - - rootGroup->GetSubgroup("group", "1"); - rootGroup->GetSubgroup("group", "2"); - rootGroup->GetCounter("2"); - - rootGroup->RemoveSubgroup("group", "1"); - rootGroup->RemoveSubgroup("group", "3"); - rootGroup->RemoveSubgroup("sensor", "2"); - - TStringStream ss; - TCountersPrinter printer(&ss); - rootGroup->Accept("root", "counters", printer); - - UNIT_ASSERT_STRINGS_EQUAL(ss.Str(), - "root:counters {\n" - " group:2 {\n" - " }\n" - " sensor:2 = 0\n" - "}\n"); - } + TDynamicCounterPtr rootGroup(new TDynamicCounters()); + + rootGroup->GetSubgroup("group", "1"); + rootGroup->GetSubgroup("group", "2"); + rootGroup->GetCounter("2"); + + rootGroup->RemoveSubgroup("group", "1"); + rootGroup->RemoveSubgroup("group", "3"); + rootGroup->RemoveSubgroup("sensor", "2"); + + TStringStream ss; + TCountersPrinter printer(&ss); + rootGroup->Accept("root", "counters", printer); + + UNIT_ASSERT_STRINGS_EQUAL(ss.Str(), + "root:counters {\n" + " group:2 {\n" + " }\n" + " sensor:2 = 0\n" + "}\n"); + } Y_UNIT_TEST(ExpiringCounters) { TDynamicCounterPtr rootGroup{new TDynamicCounters()}; diff --git a/library/cpp/monlib/service/service.cpp b/library/cpp/monlib/service/service.cpp index 929efbf816..365c9b4eef 100644 --- a/library/cpp/monlib/service/service.cpp +++ b/library/cpp/monlib/service/service.cpp @@ -71,9 +71,9 @@ namespace NMonitoring { TStringBuf GetPostContent() const override { return TStringBuf(PostContent.Buffer().Data(), PostContent.Buffer().Size()); } - HTTP_METHOD GetMethod() const override { - return (HTTP_METHOD)Header.http_method; - } + HTTP_METHOD GetMethod() const override { + return (HTTP_METHOD)Header.http_method; + } void ScanPostParams() { PostParams.Scan(TStringBuf(PostContent.Buffer().data(), PostContent.Buffer().size())); } diff --git a/library/cpp/monlib/service/service.h b/library/cpp/monlib/service/service.h index 2f66dddaf8..b128645099 100644 --- a/library/cpp/monlib/service/service.h +++ b/library/cpp/monlib/service/service.h @@ -22,7 +22,7 @@ namespace NMonitoring { virtual const TCgiParameters& GetParams() const = 0; virtual const TCgiParameters& GetPostParams() const = 0; virtual TStringBuf GetPostContent() const = 0; - virtual HTTP_METHOD GetMethod() const = 0; + virtual HTTP_METHOD GetMethod() const = 0; virtual const THttpHeaders& GetHeaders() const = 0; virtual TString GetRemoteAddr() const = 0; }; |