aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/actors/core/process_stats.cpp
diff options
context:
space:
mode:
authormsherbakov <msherbakov@yandex-team.ru>2022-02-10 16:49:17 +0300
committerDaniil Cherednik <dcherednik@yandex-team.ru>2022-02-10 16:49:17 +0300
commita0ffafe83b7d6229709a32fa942c71d672ac989c (patch)
tree5d5cb817648f650d76cf1076100726fd9b8448e8 /library/cpp/actors/core/process_stats.cpp
parentc224a621661ddd69699f9476922eb316607ef57e (diff)
downloadydb-a0ffafe83b7d6229709a32fa942c71d672ac989c.tar.gz
Restoring authorship annotation for <msherbakov@yandex-team.ru>. Commit 2 of 2.
Diffstat (limited to 'library/cpp/actors/core/process_stats.cpp')
-rw-r--r--library/cpp/actors/core/process_stats.cpp156
1 files changed, 78 insertions, 78 deletions
diff --git a/library/cpp/actors/core/process_stats.cpp b/library/cpp/actors/core/process_stats.cpp
index cfc95034c9..0e1dbd0031 100644
--- a/library/cpp/actors/core/process_stats.cpp
+++ b/library/cpp/actors/core/process_stats.cpp
@@ -136,23 +136,23 @@ namespace NActors {
#endif
-namespace {
+namespace {
// Periodically collects process stats and exposes them as mon counters
- template <typename TDerived>
- class TProcStatCollectingActor: public TActorBootstrapped<TProcStatCollectingActor<TDerived>> {
+ template <typename TDerived>
+ class TProcStatCollectingActor: public TActorBootstrapped<TProcStatCollectingActor<TDerived>> {
public:
static constexpr IActor::EActivityType ActorActivityType() {
return IActor::ACTORLIB_STATS;
}
- TProcStatCollectingActor(TDuration interval)
- : Interval(interval)
+ TProcStatCollectingActor(TDuration interval)
+ : Interval(interval)
{
}
void Bootstrap(const TActorContext& ctx) {
- ctx.Schedule(Interval, new TEvents::TEvWakeup());
- Self()->Become(&TDerived::StateWork);
+ ctx.Schedule(Interval, new TEvents::TEvWakeup());
+ Self()->Become(&TDerived::StateWork);
}
STFUNC(StateWork) {
@@ -163,85 +163,85 @@ namespace {
private:
void Wakeup(const TActorContext& ctx) {
- Self()->UpdateCounters(ProcStat);
- ctx.Schedule(Interval, new TEvents::TEvWakeup());
+ Self()->UpdateCounters(ProcStat);
+ ctx.Schedule(Interval, new TEvents::TEvWakeup());
}
- TDerived* Self() {
+ TDerived* Self() {
ProcStat.Fill(getpid());
- return static_cast<TDerived*>(this);
+ return static_cast<TDerived*>(this);
}
-
- private:
- const TDuration Interval;
- TProcStat ProcStat;
+
+ private:
+ const TDuration Interval;
+ TProcStat ProcStat;
};
- // Periodically collects process stats and exposes them as mon counters
- class TDynamicCounterCollector: public TProcStatCollectingActor<TDynamicCounterCollector> {
- using TBase = TProcStatCollectingActor<TDynamicCounterCollector>;
- public:
+ // Periodically collects process stats and exposes them as mon counters
+ class TDynamicCounterCollector: public TProcStatCollectingActor<TDynamicCounterCollector> {
+ using TBase = TProcStatCollectingActor<TDynamicCounterCollector>;
+ public:
TDynamicCounterCollector(
ui32 intervalSeconds,
NMonitoring::TDynamicCounterPtr counters)
- : TBase{TDuration::Seconds(intervalSeconds)}
- {
- ProcStatGroup = counters->GetSubgroup("counters", "utils");
-
- VmSize = ProcStatGroup->GetCounter("Process/VmSize", false);
- AnonRssSize = ProcStatGroup->GetCounter("Process/AnonRssSize", false);
- FileRssSize = ProcStatGroup->GetCounter("Process/FileRssSize", false);
+ : TBase{TDuration::Seconds(intervalSeconds)}
+ {
+ ProcStatGroup = counters->GetSubgroup("counters", "utils");
+
+ VmSize = ProcStatGroup->GetCounter("Process/VmSize", false);
+ AnonRssSize = ProcStatGroup->GetCounter("Process/AnonRssSize", false);
+ FileRssSize = ProcStatGroup->GetCounter("Process/FileRssSize", false);
CGroupMemLimit = ProcStatGroup->GetCounter("Process/CGroupMemLimit", false);
- UserTime = ProcStatGroup->GetCounter("Process/UserTime", true);
- SysTime = ProcStatGroup->GetCounter("Process/SystemTime", true);
- MinorPageFaults = ProcStatGroup->GetCounter("Process/MinorPageFaults", true);
- MajorPageFaults = ProcStatGroup->GetCounter("Process/MajorPageFaults", true);
+ UserTime = ProcStatGroup->GetCounter("Process/UserTime", true);
+ SysTime = ProcStatGroup->GetCounter("Process/SystemTime", true);
+ MinorPageFaults = ProcStatGroup->GetCounter("Process/MinorPageFaults", true);
+ MajorPageFaults = ProcStatGroup->GetCounter("Process/MajorPageFaults", true);
UptimeSeconds = ProcStatGroup->GetCounter("Process/UptimeSeconds", false);
NumThreads = ProcStatGroup->GetCounter("Process/NumThreads", false);
SystemUptimeSeconds = ProcStatGroup->GetCounter("System/UptimeSeconds", false);
- }
-
- void UpdateCounters(const TProcStat& procStat) {
- *VmSize = procStat.Vsize;
- *AnonRssSize = procStat.AnonRss;
- *FileRssSize = procStat.FileRss;
+ }
+
+ void UpdateCounters(const TProcStat& procStat) {
+ *VmSize = procStat.Vsize;
+ *AnonRssSize = procStat.AnonRss;
+ *FileRssSize = procStat.FileRss;
if (procStat.CGroupMemLim) {
*CGroupMemLimit = procStat.CGroupMemLim;
}
- *UserTime = procStat.Utime;
- *SysTime = procStat.Stime;
- *MinorPageFaults = procStat.MinFlt;
- *MajorPageFaults = procStat.MajFlt;
+ *UserTime = procStat.Utime;
+ *SysTime = procStat.Stime;
+ *MinorPageFaults = procStat.MinFlt;
+ *MajorPageFaults = procStat.MajFlt;
*UptimeSeconds = procStat.Uptime.Seconds();
*NumThreads = procStat.NumThreads;
*SystemUptimeSeconds = procStat.Uptime.Seconds();
- }
-
- private:
+ }
+
+ private:
NMonitoring::TDynamicCounterPtr ProcStatGroup;
- NMonitoring::TDynamicCounters::TCounterPtr VmSize;
- NMonitoring::TDynamicCounters::TCounterPtr AnonRssSize;
- NMonitoring::TDynamicCounters::TCounterPtr FileRssSize;
+ NMonitoring::TDynamicCounters::TCounterPtr VmSize;
+ NMonitoring::TDynamicCounters::TCounterPtr AnonRssSize;
+ NMonitoring::TDynamicCounters::TCounterPtr FileRssSize;
NMonitoring::TDynamicCounters::TCounterPtr CGroupMemLimit;
- NMonitoring::TDynamicCounters::TCounterPtr UserTime;
- NMonitoring::TDynamicCounters::TCounterPtr SysTime;
- NMonitoring::TDynamicCounters::TCounterPtr MinorPageFaults;
- NMonitoring::TDynamicCounters::TCounterPtr MajorPageFaults;
+ NMonitoring::TDynamicCounters::TCounterPtr UserTime;
+ NMonitoring::TDynamicCounters::TCounterPtr SysTime;
+ NMonitoring::TDynamicCounters::TCounterPtr MinorPageFaults;
+ NMonitoring::TDynamicCounters::TCounterPtr MajorPageFaults;
NMonitoring::TDynamicCounters::TCounterPtr UptimeSeconds;
NMonitoring::TDynamicCounters::TCounterPtr NumThreads;
NMonitoring::TDynamicCounters::TCounterPtr SystemUptimeSeconds;
- };
-
-
- class TRegistryCollector: public TProcStatCollectingActor<TRegistryCollector> {
- using TBase = TProcStatCollectingActor<TRegistryCollector>;
- public:
+ };
+
+
+ class TRegistryCollector: public TProcStatCollectingActor<TRegistryCollector> {
+ using TBase = TProcStatCollectingActor<TRegistryCollector>;
+ public:
TRegistryCollector(TDuration interval, NMonitoring::TMetricRegistry& registry)
- : TBase{interval}
- {
- VmSize = registry.IntGauge({{"sensor", "process.VmSize"}});
- AnonRssSize = registry.IntGauge({{"sensor", "process.AnonRssSize"}});
- FileRssSize = registry.IntGauge({{"sensor", "process.FileRssSize"}});
+ : TBase{interval}
+ {
+ VmSize = registry.IntGauge({{"sensor", "process.VmSize"}});
+ AnonRssSize = registry.IntGauge({{"sensor", "process.AnonRssSize"}});
+ FileRssSize = registry.IntGauge({{"sensor", "process.FileRssSize"}});
CGroupMemLimit = registry.IntGauge({{"sensor", "process.CGroupMemLimit"}});
UptimeSeconds = registry.IntGauge({{"sensor", "process.UptimeSeconds"}});
NumThreads = registry.IntGauge({{"sensor", "process.NumThreads"}});
@@ -251,12 +251,12 @@ namespace {
SysTime = registry.Rate({{"sensor", "process.SystemTime"}});
MinorPageFaults = registry.Rate({{"sensor", "process.MinorPageFaults"}});
MajorPageFaults = registry.Rate({{"sensor", "process.MajorPageFaults"}});
- }
-
- void UpdateCounters(const TProcStat& procStat) {
- VmSize->Set(procStat.Vsize);
- AnonRssSize->Set(procStat.AnonRss);
- FileRssSize->Set(procStat.FileRss);
+ }
+
+ void UpdateCounters(const TProcStat& procStat) {
+ VmSize->Set(procStat.Vsize);
+ AnonRssSize->Set(procStat.AnonRss);
+ FileRssSize->Set(procStat.FileRss);
CGroupMemLimit->Set(procStat.CGroupMemLim);
UptimeSeconds->Set(procStat.Uptime.Seconds());
NumThreads->Set(procStat.NumThreads);
@@ -276,12 +276,12 @@ namespace {
MajorPageFaults->Reset();
MajorPageFaults->Add(procStat.MajFlt);
- }
-
- private:
- NMonitoring::TIntGauge* VmSize;
- NMonitoring::TIntGauge* AnonRssSize;
- NMonitoring::TIntGauge* FileRssSize;
+ }
+
+ private:
+ NMonitoring::TIntGauge* VmSize;
+ NMonitoring::TIntGauge* AnonRssSize;
+ NMonitoring::TIntGauge* FileRssSize;
NMonitoring::TIntGauge* CGroupMemLimit;
NMonitoring::TRate* UserTime;
NMonitoring::TRate* SysTime;
@@ -290,14 +290,14 @@ namespace {
NMonitoring::TIntGauge* UptimeSeconds;
NMonitoring::TIntGauge* NumThreads;
NMonitoring::TIntGauge* SystemUptimeSeconds;
- };
-} // namespace
-
+ };
+} // namespace
+
IActor* CreateProcStatCollector(ui32 intervalSec, NMonitoring::TDynamicCounterPtr counters) {
return new TDynamicCounterCollector(intervalSec, counters);
}
IActor* CreateProcStatCollector(TDuration interval, NMonitoring::TMetricRegistry& registry) {
- return new TRegistryCollector(interval, registry);
- }
+ return new TRegistryCollector(interval, registry);
+ }
}