Adbase
Adinf C++ base library V2
adbase::metrics::Metrics Class Reference

#include <Metrics.hpp>

Public Member Functions

 Metrics (adbase::Timer *timer)
 
void start ()
 
void innerStop ()
 
void threadFunc (void *data)
 
GaugescreateGauges (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)
 
CountercreateCounter (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)
 
MeterscreateMeters (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, MeterItemgetMeters ()
 
MeterItem getMeters (const std::string &moduleName, const std::string &metricName)
 
HistogramscreateHistograms (const std::string moduleName, const std::string metricName, uint32_t interval)
 
const std::unordered_map< std::string, HistogramsItemgetHistograms ()
 
HistogramsItem getHistograms (const std::string &moduleName, const std::string &metricName)
 
void setHistograms (const DataItem &item)
 
void histograms (void *args)
 
TimerscreateTimers (const std::string moduleName, const std::string metricName, uint32_t interval)
 
const std::unordered_map< std::string, TimersItemgetTimers ()
 
TimersItem getTimers (const std::string &moduleName, const std::string &metricName)
 
 ~Metrics ()
 

Static Public Member Functions

static Metricsinit (adbase::Timer *timer)
 
static void stop ()
 
static void deleteThread (std::thread *t)
 
static GaugesbuildGauges (const std::string moduleName, const std::string metricName, uint32_t interval, const GaugesDataCallback &func)
 
static CounterbuildCounter (const std::string moduleName, const std::string metricName)
 
static MetersbuildMeters (const std::string moduleName, const std::string metricName)
 
static HistogramsbuildHistograms (const std::string moduleName, const std::string metricName, uint32_t interval)
 
static TimersbuildTimers (const std::string moduleName, const std::string metricName, uint32_t interval)
 
static const MetricName getMetricName (const std::string &name)
 

Detailed Description

Definition at line 72 of file Metrics.hpp.

Constructor & Destructor Documentation

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.

Member Function Documentation

Counter * adbase::metrics::Metrics::buildCounter ( const std::string  moduleName,
const std::string  metricName 
)
static

Definition at line 146 of file Metrics.cpp.

References createCounter().

Referenced by adbase::metrics::Meters::Meters().

Gauges * adbase::metrics::Metrics::buildGauges ( const std::string  moduleName,
const std::string  metricName,
uint32_t  interval,
const GaugesDataCallback func 
)
static

Definition at line 96 of file Metrics.cpp.

References createGauges().

Histograms * adbase::metrics::Metrics::buildHistograms ( const std::string  moduleName,
const std::string  metricName,
uint32_t  interval 
)
static

Definition at line 370 of file Metrics.cpp.

References createHistograms().

Referenced by adbase::metrics::Timers::Timers().

Meters * adbase::metrics::Metrics::buildMeters ( const std::string  moduleName,
const std::string  metricName 
)
static

Definition at line 203 of file Metrics.cpp.

References createMeters().

Referenced by adbase::kafka::Consumer::threadFunc(), and adbase::metrics::Timers::Timers().

Timers * adbase::metrics::Metrics::buildTimers ( const std::string  moduleName,
const std::string  metricName,
uint32_t  interval 
)
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().

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().

void adbase::metrics::Metrics::deleteThread ( std::thread *  t)
static

Definition at line 618 of file Metrics.cpp.

Referenced by start().

void adbase::metrics::Metrics::gauge ( void *  args)
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.

const MetricName adbase::metrics::Metrics::getMetricName ( const std::string &  name)
static
const std::unordered_map< std::string, TimersItem > adbase::metrics::Metrics::getTimers ( )
TimersItem adbase::metrics::Metrics::getTimers ( const std::string &  moduleName,
const std::string &  metricName 
)
Metrics * adbase::metrics::Metrics::init ( adbase::Timer timer)
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)
void adbase::metrics::Metrics::meter1min ( void *  args)
void adbase::metrics::Metrics::meter1sec ( void *  args)
void adbase::metrics::Metrics::meter5min ( void *  args)
void adbase::metrics::Metrics::setCounter ( const DataItem item)
void adbase::metrics::Metrics::setHistograms ( const DataItem item)
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().

void adbase::metrics::Metrics::stop ( )
static

Definition at line 28 of file Metrics.cpp.

References adbase::metrics::gMetric, and innerStop().

void adbase::metrics::Metrics::threadFunc ( void *  data)

The documentation for this class was generated from the following files: