23 #include "rrd_example_thread.h" 25 #include <core/exceptions/system.h> 26 #include <utils/misc/string_conversions.h> 27 #include <utils/system/file.h> 28 #include <plugins/rrd/aspect/rrd_manager.h> 45 :
Thread(
"RRDExampleThread",
Thread::OPMODE_WAITFORWAKEUP),
60 std::vector<RRDDataSource> rrds;
61 rrds.push_back(
RRDDataSource(
"value", RRDDataSource::COUNTER));
65 std::vector<RRDGraphDataDefinition> defs;
66 std::vector<RRDGraphElement> els;
71 els.push_back(
RRDGraphLine(
"value", 1,
"FF0000",
"Value",
false));
73 "Current\\:%8.2lf %s"));
75 "Average\\:%8.2lf %s"));
77 "Maximum\\:%8.2lf %s\\n"));
81 "Test Value",
"Foo", 10,
102 if (rand() > RAND_MAX/2) __counter++;
103 if (__loop_count == 10) {
virtual void init()
Initialize the thread.
RRDManager * rrd_manager
Manager class to access RRD features.
RRDExampleThread()
Constructor.
virtual void add_rrd(RRDDefinition *rrd_def)=0
Add RRD.
Fawkes library namespace.
virtual void add_graph(RRDGraphDefinition *rrd_graph_def)=0
Add graph.
Thread class encapsulation of pthreads.
virtual void add_data(const char *rrd_name, const char *format,...)=0
Add data.
Logger * logger
This is the Logger member used to access the logger.
Thread aspect to use blocked timing.
virtual ~RRDExampleThread()
Destructor.
Represent data definition in graph arguments.
Base class for exceptions in Fawkes.
Class representing a graph definition.
virtual void finalize()
Finalize the thread.
Class to represent a RRD data source.
const char * name() const
Get name of thread.
virtual void remove_rrd(RRDDefinition *rrd_def)=0
Remove RRD.
virtual void log_warn(const char *component, const char *format,...)=0
Log warning message.
virtual void log_debug(const char *component, const char *format,...)=0
Log debug message.
const char * get_name() const
Get name.
Print string inside graph.
virtual void loop()
Code to execute in the thread.