66 static std::shared_ptr<DBServer_PostgreSQL>
init_dbserver(
int argc,
const char*
const* argv,
const std::shared_ptr<uniset::SharedMemory>& ic =
nullptr,
const std::string& prefix =
"pgsql" );
69 static void help_print(
int argc,
const char*
const* argv );
71 inline std::shared_ptr<LogAgregator> logAggregator()
75 inline std::shared_ptr<DebugStream> log()
80 bool isConnectOk()
const;
82 static constexpr std::string_view tblcols = {
"date,time,time_usec,sensor_id,value,node" };
85 typedef std::unordered_map<int, std::string> DBTableMap;
87 virtual void initDBServer()
override;
88 virtual void onReconnect( std::unique_ptr<PostgreSQLInterface>& db ) {};
96 virtual std::string getMonitInfo(
const std::string& params )
override;
98 bool writeToBase(
const std::string& query );
100 inline std::string tblName(
int key)
113 std::unique_ptr<PostgreSQLInterface> db;
114 typedef std::queue<std::string> QueryBuffer;
120 typedef std::vector<PostgreSQLInterface::Record> InsertBuffer;
121 void flushInsertBuffer();
122 virtual void addRecord(
const PostgreSQLInterface::Record&& rec );
123 virtual bool writeInsertBufferToDB(
const std::string& table
124 , std::string_view colname
125 ,
const InsertBuffer& ibuf );
130 int PingTime = { 15000 };
131 int ReconnectTime = { 30000 };
133 bool connect_ok = {
false };
136 size_t qbufSize = { 200 };
137 bool lastRemove = {
false };
141 size_t ibufSize = { 0 };
142 size_t ibufMaxSize = { 2000 };
143 timeout_t ibufSyncTimeout = { 15000 };
144 float ibufOverflowCleanFactor = { 0.5 };
The DBServer_PostgreSQL class Реализация работы с PostgreSQL. Т.к. основная работа сервера - это част...
Definition DBServer_PostgreSQL.h:59
Timers
Definition DBServer_PostgreSQL.h:106
@ FlushInsertBuffer
Definition DBServer_PostgreSQL.h:109
@ PingTimer
Definition DBServer_PostgreSQL.h:107
@ ReconnectTimer
Definition DBServer_PostgreSQL.h:108
virtual bool deactivateObject() override
Деактивация объекта (переопределяется для необходимых действий при завершении работы)
Definition DBServer_PostgreSQL.cc:455
static std::shared_ptr< DBServer_PostgreSQL > init_dbserver(int argc, const char *const *argv, const std::shared_ptr< uniset::SharedMemory > &ic=nullptr, const std::string &prefix="pgsql")
Definition DBServer_PostgreSQL.cc:494
static void help_print(int argc, const char *const *argv)
Definition DBServer_PostgreSQL.cc:531
Definition MessageType.h:283