17#ifndef _BackendOpenTSDB_H_
18#define _BackendOpenTSDB_H_
22#include <unordered_map>
24#include "UObject_SK.h"
25#include "SMInterface.h"
26#include "SharedMemory.h"
27#include "extensions/Extensions.h"
28#include "UTCPStream.h"
29#include "USingleProcess.h"
104 class BackendOpenTSDB:
105 private USingleProcess,
110 const std::string& prefix =
"opentsdb" );
111 virtual ~BackendOpenTSDB();
114 static std::shared_ptr<BackendOpenTSDB>
init_opendtsdb(
int argc,
const char*
const* argv,
116 const std::string& prefix =
"opentsdb" );
119 static void help_print(
int argc,
const char*
const* argv );
121 inline std::shared_ptr<LogAgregator> getLogAggregator()
125 inline std::shared_ptr<DebugStream> log()
143 virtual void callback()
noexcept override;
145 virtual void askSensors( UniversalIO::UIOCommand cmd )
override;
151 void init( xmlNode* cnode );
155 std::shared_ptr<SMInterface> shm;
159 const std::string name;
160 const std::string tags;
162 ParamInfo(
const std::string& _name,
const std::string& _tags ):
163 name(_name), tags(_tags) {}
166 std::string tsdbPrefix;
167 std::string tsdbTags;
168 std::unordered_map<uniset::ObjectId, ParamInfo> tsdbParams;
170 timeout_t bufSyncTime = { 5000 };
171 size_t bufSize = { 500 };
172 size_t bufMaxSize = { 5000 };
173 bool timerIsOn = {
false };
174 timeout_t reconnectTime = { 5000 };
175 std::string lastError;
180 std::deque<std::string> buf;
183 std::shared_ptr<UTCPStream> tcp;
184 std::string host = {
"localhost" };
virtual std::string getMonitInfo() const override
Определения BackendOpenTSDB.cc:433
static std::shared_ptr< BackendOpenTSDB > init_opendtsdb(int argc, const char *const *argv, uniset::ObjectId shmID, const std::shared_ptr< SharedMemory > &ic=nullptr, const std::string &prefix="opentsdb")
Определения BackendOpenTSDB.cc:182
virtual void callback() noexcept override
Определения BackendOpenTSDB.cc:216
static void help_print(int argc, const char *const *argv)
Определения BackendOpenTSDB.cc:146
Определения MessageType.h:127
Определения MessageType.h:171
Определения MessageType.h:214
Определения Calibration.h:27
long ObjectId
Определения UniSetTypes_i.idl:30