std::stringstream stats;
const std::string prefix = "ixfrdist_";
- stats<<"# HELP "<<prefix<<"uptime_seconds The uptime of the process"<<std::endl;
+ stats<<"# HELP "<<prefix<<"uptime_seconds The uptime of the process (in seconds)"<<std::endl;
stats<<"# TYPE "<<prefix<<"uptime_seconds gauge"<<std::endl;
stats<<prefix<<"uptime_seconds "<<time(nullptr) - progStats.startTime<<std::endl;
+ stats<<"# HELP "<<prefix<<"sys_msec Number of msec spent in system time"<<std::endl;
+ stats<<"# TYPE "<<prefix<<"sys_msec gauge"<<std::endl;
+ stats<<prefix<<"sys_msec "<<getCPUTimeSystem("")<<std::endl;
+
+ stats<<"# HELP "<<prefix<<"user_msec Number of msec spent in user time"<<std::endl;
+ stats<<"# TYPE "<<prefix<<"user_msec gauge"<<std::endl;
+ stats<<prefix<<"user_msec "<<getCPUTimeUser("")<<std::endl;
+
stats<<"# HELP "<<prefix<<"fd_usage Number of open file descriptors"<<std::endl;
stats<<"# TYPE "<<prefix<<"fd_usage gauge"<<std::endl;
stats<<prefix<<"fd_usage "<<getOpenFileDescriptors("")<<std::endl;
+ stats<<"# HELP "<<prefix<<"real_memory_usage Actual unique use of memory in bytes (approx)"<<std::endl;
+ stats<<"# TYPE "<<prefix<<"real_memory_usage gauge"<<std::endl;
+ stats<<prefix<<"real_memory_usage "<<getRealMemoryUsage("")<<std::endl;
+
stats<<"# HELP "<<prefix<<"domains The amount of configured domains"<<std::endl;
stats<<"# TYPE "<<prefix<<"domains gauge"<<std::endl;
stats<<prefix<<"domains "<<domainStats.size()<<std::endl;
_config_domains = {'example': '127.0.0.1:' + str(xfrServerPort)}
- metric_prog_stats = ["ixfrdist_uptime_seconds", "ixfrdist_domains", "ixfrdist_unknown_domain_inqueries_total"]
+ metric_prog_stats = ["ixfrdist_uptime_seconds", "ixfrdist_domains",
+ "ixfrdist_unknown_domain_inqueries_total",
+ "ixfrdist_sys_msec", "ixfrdist_user_msec",
+ "ixfrdist_real_memory_usage",
+ "ixfrdist_fd_usage"]
metric_domain_stats = ["ixfrdist_soa_serial", "ixfrdist_soa_checks_total",
"ixfrdist_soa_checks_failed_total",
"ixfrdist_soa_inqueries_total",