Adbase
Adinf C++ base library V2
|
#include <Metrics.hpp>
Public Member Functions | |
Metrics (adbase::Timer *timer) | |
void | start () |
void | innerStop () |
void | threadFunc (void *data) |
Gauges * | createGauges (const std::string moduleName, const std::string metricName, uint32_t interval, const GaugesDataCallback &func) |
const std::unordered_map< std::string, int64_t > | getGauges () |
void | gauge (void *args) |
Counter * | createCounter (const std::string moduleName, const std::string metricName) |
const std::unordered_map< std::string, int64_t > | getCounter () |
int64_t | getCounter (const std::string &moduleName, const std::string &metricName) |
void | setCounter (const DataItem &item) |
Meters * | createMeters (const std::string moduleName, const std::string metricName) |
void | setMeters (const DataItem &item) |
void | meter1sec (void *args) |
void | meter1min (void *args) |
void | meter5min (void *args) |
void | meter15min (void *args) |
const std::unordered_map< std::string, MeterItem > | getMeters () |
MeterItem | getMeters (const std::string &moduleName, const std::string &metricName) |
Histograms * | createHistograms (const std::string moduleName, const std::string metricName, uint32_t interval) |
const std::unordered_map< std::string, HistogramsItem > | getHistograms () |
HistogramsItem | getHistograms (const std::string &moduleName, const std::string &metricName) |
void | setHistograms (const DataItem &item) |
void | histograms (void *args) |
Timers * | createTimers (const std::string moduleName, const std::string metricName, uint32_t interval) |
const std::unordered_map< std::string, TimersItem > | getTimers () |
TimersItem | getTimers (const std::string &moduleName, const std::string &metricName) |
~Metrics () | |
Static Public Member Functions | |
static Metrics * | init (adbase::Timer *timer) |
static void | stop () |
static void | deleteThread (std::thread *t) |
static Gauges * | buildGauges (const std::string moduleName, const std::string metricName, uint32_t interval, const GaugesDataCallback &func) |
static Counter * | buildCounter (const std::string moduleName, const std::string metricName) |
static Meters * | buildMeters (const std::string moduleName, const std::string metricName) |
static Histograms * | buildHistograms (const std::string moduleName, const std::string metricName, uint32_t interval) |
static Timers * | buildTimers (const std::string moduleName, const std::string metricName, uint32_t interval) |
static const MetricName | getMetricName (const std::string &name) |
Definition at line 72 of file Metrics.hpp.
adbase::metrics::Metrics::Metrics | ( | adbase::Timer * | timer | ) |
Definition at line 9 of file Metrics.cpp.
Referenced by init().
adbase::metrics::Metrics::~Metrics | ( | ) |
Definition at line 612 of file Metrics.cpp.
|
static |
Definition at line 146 of file Metrics.cpp.
References createCounter().
Referenced by adbase::metrics::Meters::Meters().
|
static |
Definition at line 96 of file Metrics.cpp.
References createGauges().
|
static |
Definition at line 370 of file Metrics.cpp.
References createHistograms().
Referenced by adbase::metrics::Timers::Timers().
|
static |
Definition at line 203 of file Metrics.cpp.
References createMeters().
Referenced by adbase::kafka::Consumer::threadFunc(), and adbase::metrics::Timers::Timers().
|
static |
Definition at line 510 of file Metrics.cpp.
References createTimers().
Referenced by adbase::http::Server::Server().
Counter * adbase::metrics::Metrics::createCounter | ( | const std::string | moduleName, |
const std::string | metricName | ||
) |
Definition at line 157 of file Metrics.cpp.
Referenced by buildCounter().
Gauges * adbase::metrics::Metrics::createGauges | ( | const std::string | moduleName, |
const std::string | metricName, | ||
uint32_t | interval, | ||
const GaugesDataCallback & | func | ||
) |
Definition at line 108 of file Metrics.cpp.
References gauge(), and adbase::Timer::runEvery().
Referenced by buildGauges().
Histograms * adbase::metrics::Metrics::createHistograms | ( | const std::string | moduleName, |
const std::string | metricName, | ||
uint32_t | interval | ||
) |
Definition at line 381 of file Metrics.cpp.
References histograms(), adbase::metrics::histogramsItem::max, adbase::metrics::histogramsItem::mean, adbase::metrics::histogramsItem::median, adbase::metrics::histogramsItem::min, adbase::metrics::histogramsItem::percent75, adbase::metrics::histogramsItem::percent95, adbase::metrics::histogramsItem::percent98, adbase::metrics::histogramsItem::percent99, adbase::metrics::histogramsItem::percent999, adbase::Timer::runEvery(), and adbase::metrics::histogramsItem::stddev.
Referenced by buildHistograms().
Meters * adbase::metrics::Metrics::createMeters | ( | const std::string | moduleName, |
const std::string | metricName | ||
) |
Definition at line 214 of file Metrics.cpp.
References adbase::metrics::meterItem::count, adbase::metrics::meterItem::meanRate, meter15min(), meter1min(), meter1sec(), meter5min(), adbase::metrics::meterItem::min15Rate, adbase::metrics::meterItem::min1Rate, adbase::metrics::meterItem::min5Rate, adbase::Timer::runEvery(), and adbase::metrics::meterItem::time.
Referenced by buildMeters().
Timers * adbase::metrics::Metrics::createTimers | ( | const std::string | moduleName, |
const std::string | metricName, | ||
uint32_t | interval | ||
) |
Definition at line 521 of file Metrics.cpp.
Referenced by buildTimers().
|
static |
Definition at line 618 of file Metrics.cpp.
Referenced by start().
void adbase::metrics::Metrics::gauge | ( | void * | args | ) |
Definition at line 131 of file Metrics.cpp.
References adbase::metrics::Gauges::getCallback(), adbase::metrics::Gauges::getMetricName(), and adbase::metrics::Gauges::getModuleName().
Referenced by createGauges().
const std::unordered_map< std::string, int64_t > adbase::metrics::Metrics::getCounter | ( | ) |
Definition at line 171 of file Metrics.cpp.
Referenced by adbase::metrics::Meters::getCounter().
int64_t adbase::metrics::Metrics::getCounter | ( | const std::string & | moduleName, |
const std::string & | metricName | ||
) |
Definition at line 179 of file Metrics.cpp.
const std::unordered_map< std::string, int64_t > adbase::metrics::Metrics::getGauges | ( | ) |
Definition at line 123 of file Metrics.cpp.
const std::unordered_map< std::string, HistogramsItem > adbase::metrics::Metrics::getHistograms | ( | ) |
Definition at line 408 of file Metrics.cpp.
HistogramsItem adbase::metrics::Metrics::getHistograms | ( | const std::string & | moduleName, |
const std::string & | metricName | ||
) |
Definition at line 416 of file Metrics.cpp.
const std::unordered_map< std::string, MeterItem > adbase::metrics::Metrics::getMeters | ( | ) |
Definition at line 347 of file Metrics.cpp.
MeterItem adbase::metrics::Metrics::getMeters | ( | const std::string & | moduleName, |
const std::string & | metricName | ||
) |
Definition at line 355 of file Metrics.cpp.
|
static |
Definition at line 599 of file Metrics.cpp.
References adbase::explode(), adbase::metrics::metricName::metricName, and adbase::metrics::metricName::moduleName.
const std::unordered_map< std::string, TimersItem > adbase::metrics::Metrics::getTimers | ( | ) |
Definition at line 537 of file Metrics.cpp.
References adbase::metrics::Meters::getMetricName(), adbase::metrics::Meters::getModuleName(), adbase::metrics::timersItem::histogram, and adbase::metrics::timersItem::meter.
TimersItem adbase::metrics::Metrics::getTimers | ( | const std::string & | moduleName, |
const std::string & | metricName | ||
) |
Definition at line 565 of file Metrics.cpp.
References adbase::metrics::Timers::getMeters(), adbase::metrics::Meters::getMetricName(), adbase::metrics::Meters::getModuleName(), adbase::metrics::timersItem::histogram, and adbase::metrics::timersItem::meter.
void adbase::metrics::Metrics::histograms | ( | void * | args | ) |
Definition at line 443 of file Metrics.cpp.
References adbase::metrics::Histograms::getMetricName(), adbase::metrics::Histograms::getModuleName(), adbase::metrics::histogramsItem::max, adbase::metrics::histogramsItem::mean, adbase::metrics::histogramsItem::median, adbase::metrics::histogramsItem::min, adbase::metrics::histogramsItem::percent75, adbase::metrics::histogramsItem::percent95, adbase::metrics::histogramsItem::percent98, adbase::metrics::histogramsItem::percent99, adbase::metrics::histogramsItem::percent999, and adbase::metrics::histogramsItem::stddev.
Referenced by createHistograms(), and setHistograms().
|
static |
Definition at line 17 of file Metrics.cpp.
References adbase::metrics::gMetric, Metrics(), and start().
void adbase::metrics::Metrics::innerStop | ( | ) |
Definition at line 38 of file Metrics.cpp.
References adbase::metrics::METRICS_STOP, and adbase::metrics::dataItem::type.
Referenced by stop().
void adbase::metrics::Metrics::meter15min | ( | void * | args | ) |
Definition at line 323 of file Metrics.cpp.
References adbase::metrics::Meters::getMetricName(), and adbase::metrics::Meters::getModuleName().
Referenced by createMeters().
void adbase::metrics::Metrics::meter1min | ( | void * | args | ) |
Definition at line 268 of file Metrics.cpp.
References adbase::metrics::Meters::getCounter(), adbase::metrics::Meters::getMetricName(), and adbase::metrics::Meters::getModuleName().
Referenced by createMeters().
void adbase::metrics::Metrics::meter1sec | ( | void * | args | ) |
Definition at line 246 of file Metrics.cpp.
References adbase::metrics::Meters::getCounter(), adbase::metrics::Meters::getMetricName(), and adbase::metrics::Meters::getModuleName().
Referenced by createMeters().
void adbase::metrics::Metrics::meter5min | ( | void * | args | ) |
Definition at line 299 of file Metrics.cpp.
References adbase::metrics::Meters::getMetricName(), and adbase::metrics::Meters::getModuleName().
Referenced by createMeters().
void adbase::metrics::Metrics::setCounter | ( | const DataItem & | item | ) |
Definition at line 192 of file Metrics.cpp.
References adbase::metrics::dataItem::context, adbase::metrics::Counter::getMetricName(), adbase::metrics::Counter::getModuleName(), and adbase::metrics::dataItem::val.
Referenced by threadFunc().
void adbase::metrics::Metrics::setHistograms | ( | const DataItem & | item | ) |
Definition at line 430 of file Metrics.cpp.
References adbase::metrics::dataItem::context, adbase::metrics::Histograms::getMetricName(), adbase::metrics::Histograms::getModuleName(), histograms(), and adbase::metrics::dataItem::val.
Referenced by threadFunc().
void adbase::metrics::Metrics::setMeters | ( | const DataItem & | item | ) |
void adbase::metrics::Metrics::start | ( | ) |
Definition at line 48 of file Metrics.cpp.
References deleteThread(), and threadFunc().
Referenced by init().
|
static |
Definition at line 28 of file Metrics.cpp.
References adbase::metrics::gMetric, and innerStop().
void adbase::metrics::Metrics::threadFunc | ( | void * | data | ) |
Definition at line 56 of file Metrics.cpp.
References adbase::metrics::METRICS_COUNTER, adbase::metrics::METRICS_HISTOGRAMS, setCounter(), and setHistograms().
Referenced by start().