artdaq_utilities  v1_04_02
artdaq::FileMetric Class Reference

FileMetric writes metric data to a file on disk. More...

Inheritance diagram for artdaq::FileMetric:
artdaq::MetricPlugin

Public Member Functions

 FileMetric (fhicl::ParameterSet config)
 FileMetric Constructor. Opens the file and starts the metric. More...
 
virtual ~FileMetric ()
 FileMetric Destructor. Calls stopMetrics and then closes the file.
 
std::string getLibName () const override
 Get the library name for the File metric. More...
 
void sendMetric_ (const std::string &name, const std::string &value, const std::string &unit) override
 Write metric data to a file. More...
 
void sendMetric_ (const std::string &name, const int &value, const std::string &unit) override
 Write metric data to a file. More...
 
void sendMetric_ (const std::string &name, const double &value, const std::string &unit) override
 Write metric data to a file. More...
 
void sendMetric_ (const std::string &name, const float &value, const std::string &unit) override
 Write metric data to a file. More...
 
void sendMetric_ (const std::string &name, const unsigned long int &value, const std::string &unit) override
 Write metric data to a file. More...
 
void startMetrics_ () override
 Perform startup actions. Writes start message to output file.
 
void stopMetrics_ () override
 Perform shutdown actions. Writes stop message to output file.
 
- Public Member Functions inherited from artdaq::MetricPlugin
 MetricPlugin (fhicl::ParameterSet const &ps)
 MetricPlugin Constructor. More...
 
virtual ~MetricPlugin ()=default
 Default virtual Desctructor.
 
void addMetricData (MetricData data)
 Send a metric value to the MetricPlugin. More...
 
void sendMetrics (bool forceSend=false)
 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.
 
void setRunLevel (int level)
 Set the threshold for sending metrics to the underlying storage. More...
 
int getRunLevel () const
 Get the threshold for sending metrics to the underlying storage. More...
 

Additional Inherited Members

- 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
int runLevel_
 The threshold for sending metrics to the underlying storage. Metrics with level <= to runLevel_ will be sent.
 
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.
 
bool inhibit_
 Whether to inhibit all metric sending.
 

Detailed Description

FileMetric writes metric data to a file on disk.

Definition at line 21 of file file_metric.cc.

Constructor & Destructor Documentation

artdaq::FileMetric::FileMetric ( fhicl::ParameterSet  config)
inlineexplicit

FileMetric Constructor. Opens the file and starts the metric.

Parameters
configParameterSet used to configure FileMetric
* FileMetric accepts the following Parameters:
* "fileName" (Default: "FileMetric.out"): Name of the output file
* "uniquify" (Default: false): If true, will replace %UID% with the PID of the current process, or append _%UID% to the end of the filename if %UID% is not present in fileName
* "fileMode" (Default: "append"): Set to "Overwrite" to create a new file instead of appending
* 

Definition at line 41 of file file_metric.cc.

Member Function Documentation

std::string artdaq::FileMetric::getLibName ( ) const
inlineoverridevirtual

Get the library name for the File metric.

Returns
The library name for the File metric, "file"

Reimplemented from artdaq::MetricPlugin.

Definition at line 90 of file file_metric.cc.

void artdaq::FileMetric::sendMetric_ ( const std::string &  name,
const std::string &  value,
const std::string &  unit 
)
inlineoverridevirtual

Write metric data to a file.

Parameters
nameName of the metric
valueValue of the metric
unitUnits of the metric

Implements artdaq::MetricPlugin.

Definition at line 98 of file file_metric.cc.

void artdaq::FileMetric::sendMetric_ ( const std::string &  name,
const int &  value,
const std::string &  unit 
)
inlineoverridevirtual

Write metric data to a file.

Parameters
nameName of the metric
valueValue of the metric
unitUnits of the metric

Implements artdaq::MetricPlugin.

Definition at line 113 of file file_metric.cc.

void artdaq::FileMetric::sendMetric_ ( const std::string &  name,
const double &  value,
const std::string &  unit 
)
inlineoverridevirtual

Write metric data to a file.

Parameters
nameName of the metric
valueValue of the metric
unitUnits of the metric

Implements artdaq::MetricPlugin.

Definition at line 124 of file file_metric.cc.

void artdaq::FileMetric::sendMetric_ ( const std::string &  name,
const float &  value,
const std::string &  unit 
)
inlineoverridevirtual

Write metric data to a file.

Parameters
nameName of the metric
valueValue of the metric
unitUnits of the metric

Implements artdaq::MetricPlugin.

Definition at line 135 of file file_metric.cc.

void artdaq::FileMetric::sendMetric_ ( const std::string &  name,
const unsigned long int &  value,
const std::string &  unit 
)
inlineoverride

Write metric data to a file.

Parameters
nameName of the metric
valueValue of the metric
unitUnits of the metric

Definition at line 146 of file file_metric.cc.


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