artdaq_utilities
v1_05_00
|
Send a metric to Graphite. More...
Public Member Functions | |
GraphiteMetric (fhicl::ParameterSet const &config, std::string const &app_name) | |
GraphiteMetric Constructor. More... | |
virtual | ~GraphiteMetric () |
GraphiteMetric Destructor. Calls stopMetrics() | |
std::string | getLibName () const override |
Get the library name for the Graphite metric. More... | |
void | sendMetric_ (const std::string &name, const std::string &value, const std::string &) override |
Send a metric to Graphite. More... | |
void | sendMetric_ (const std::string &name, const int &value, const std::string &unit) override |
Send a metric to Graphite. More... | |
void | sendMetric_ (const std::string &name, const double &value, const std::string &unit) override |
Send a metric to Graphite. More... | |
void | sendMetric_ (const std::string &name, const float &value, const std::string &unit) override |
Send a metric to Graphite. More... | |
void | sendMetric_ (const std::string &name, const unsigned long int &value, const std::string &unit) override |
Send a metric to Graphite. More... | |
void | startMetrics_ () override |
Perform startup actions. For Graphite, this means reconnecting the socket. | |
void | stopMetrics_ () override |
Perform shutdown actions. This shuts down the socket and closes it. | |
Public Member Functions inherited from artdaq::MetricPlugin | |
MetricPlugin (fhicl::ParameterSet const &ps, std::string const &app_name) | |
MetricPlugin Constructor. More... | |
virtual | ~MetricPlugin ()=default |
Default virtual Desctructor. | |
void | addMetricData (std::unique_ptr< MetricData > const &data) |
Send a metric value to the MetricPlugin. More... | |
void | sendMetrics (bool forceSend=false, std::chrono::steady_clock::time_point interval_end=std::chrono::steady_clock::now()) |
For each known metric, determine whether the reporting interval has elapsed, and if so, report a value to the underlying metric storage. More... | |
void | startMetrics () |
Perform startup actions. Simply calls the virtual startMetrics_ function. | |
void | stopMetrics () |
Perform shutdown actions. Zeroes out all accumulators, and sends zeros for each metric. Calls stopMetrics_() for any plugin-defined shutdown actions. | |
bool | IsLevelEnabled (int level) |
Determine if the given level is enabled for this MetricPlugin instance. More... | |
Additional Inherited Members | |
Public Types inherited from artdaq::MetricPlugin | |
using | Parameters = fhicl::WrappedTable< Config > |
Used for ParameterSet validation (if desired) | |
Protected Member Functions inherited from artdaq::MetricPlugin | |
virtual void | sendMetric_ (const std::string &name, const long unsigned int &value, const std::string &unit)=0 |
Send a metric to the underlying metric storage (file, Graphite, Ganglia, etc.) More... | |
Protected Attributes inherited from artdaq::MetricPlugin | |
fhicl::ParameterSet | pset |
The ParameterSet used to configure the MetricPlugin. | |
double | accumulationTime_ |
The amount of time to average metric values; except for accumulate=false metrics, will be the interval at which each metric is sent. | |
std::string | app_name_ |
Name of the application which is sending metrics to this plugin. | |
bool | inhibit_ |
Flag to indicate that the MetricPlugin is being stopped, and any metric back-ends which do not have a persistent state (i.e. file) should not report further metrics. | |
std::bitset< 64 > | level_mask_ |
Bitset indicating for each possible metric level, whether this plugin will receive those metrics. | |
Send a metric to Graphite.
Graphite accepts metrics in a tree hiereachy, using '.' as a delimiter. Therefore, the metric artdaq.BoardReader.Fragment_Rate will appear in Graphite as: artdaq/ BoardReader/ Fragment_Rate
This plugin sends TCP messages with the following content: [name] [value] [timestamp], units are discarded
Definition at line 31 of file graphite_metric.cc.
|
inlineexplicit |
GraphiteMetric Constructor.
config | ParameterSet used to configure GraphiteMetric |
app_name | Name of the application sending metrics |
* GraphiteMetric accepts the following Parameters: * "host" (Default: "localhost"): Destination host * "port" (Default: 2003): Destination port * "namespace" (Default: "artdaq."): Directory name to prepend to all metrics. Should include the trailing '.' *
Definition at line 56 of file graphite_metric.cc.
|
inlineoverridevirtual |
Get the library name for the Graphite metric.
Reimplemented from artdaq::MetricPlugin.
Definition at line 78 of file graphite_metric.cc.
|
inlineoverridevirtual |
Send a metric to Graphite.
name | Name of the metric. Will have the namespace prepended |
value | Value of the metric |
Implements artdaq::MetricPlugin.
Definition at line 85 of file graphite_metric.cc.
|
inlineoverridevirtual |
Send a metric to Graphite.
name | Name of the metric. Will have the namespace prepended |
value | Value of the metric |
unit | Units of the metric (Not used) |
Implements artdaq::MetricPlugin.
Definition at line 114 of file graphite_metric.cc.
|
inlineoverridevirtual |
Send a metric to Graphite.
name | Name of the metric. Will have the namespace prepended |
value | Value of the metric |
unit | Units of the metric (Not used) |
Implements artdaq::MetricPlugin.
Definition at line 125 of file graphite_metric.cc.
|
inlineoverridevirtual |
Send a metric to Graphite.
name | Name of the metric. Will have the namespace prepended |
value | Value of the metric |
unit | Units of the metric (Not used) |
Implements artdaq::MetricPlugin.
Definition at line 136 of file graphite_metric.cc.
|
inlineoverride |
Send a metric to Graphite.
name | Name of the metric. Will have the namespace prepended |
value | Value of the metric |
unit | Units of the metric (Not used) |
Definition at line 147 of file graphite_metric.cc.