UniSet 2.32.1
Классы | Открытые члены | Открытые статические члены | Защищенные типы | Защищенные члены | Защищенные статические члены | Защищенные данные | Друзья | Полный список членов класса
Класс uniset::LogDB

#include <LogDB.h>

Граф наследования:uniset::LogDB:
Inheritance graph
[см. легенду]
Граф связей класса uniset::LogDB:
Collaboration graph
[см. легенду]

Классы

class  Log
 
class  LogDBRequestHandlerFactory
 
class  LogWebSocket
 
class  LogWebSocketGuard
 

Открытые члены

 LogDB (const std::string &name, int argc, const char *const *argv, const std::string &prefix)
 
std::shared_ptr< DebugStreamlog ()
 
void run (bool async)
 
virtual void handleRequest (Poco::Net::HTTPServerRequest &req, Poco::Net::HTTPServerResponse &resp) override
 
void onWebSocketSession (Poco::Net::HTTPServerRequest &req, Poco::Net::HTTPServerResponse &resp)
 
- Открытые члены унаследованные от uniset::EventLoopServer
bool evIsActive () const noexcept
 

Открытые статические члены

static std::shared_ptr< LogDBinit_logdb (int argc, const char *const *argv, const std::string &prefix="logdb-")
 
static void help_print ()
 

Защищенные типы

typedef std::queue< std::string > QueryBuffer
 

Защищенные члены

virtual void evfinish () override
 
virtual void evprepare () override
 
void onCheckBuffer (ev::timer &t, int revents)
 
void onActivate (ev::async &watcher, int revents)
 
void addLog (Log *log, const std::string &txt)
 
void log2File (Log *log, const std::string &txt)
 
size_t getCountOfRecords (const std::string &logname="")
 
size_t getFirstOfOldRecord (size_t maxnum)
 
Poco::JSON::Object::Ptr respError (Poco::Net::HTTPServerResponse &resp, Poco::Net::HTTPResponse::HTTPStatus s, const std::string &message)
 
Poco::JSON::Object::Ptr httpGetRequest (const std::string &cmd, const Poco::URI::QueryParameters &p)
 
Poco::JSON::Object::Ptr httpGetList (const Poco::URI::QueryParameters &p)
 
Poco::JSON::Object::Ptr httpGetLogs (const Poco::URI::QueryParameters &p)
 
Poco::JSON::Object::Ptr httpGetCount (const Poco::URI::QueryParameters &p)
 
void httpWebSocketPage (std::ostream &out, Poco::Net::HTTPServerRequest &req, Poco::Net::HTTPServerResponse &resp)
 
void httpWebSocketConnectPage (std::ostream &out, Poco::Net::HTTPServerRequest &req, Poco::Net::HTTPServerResponse &resp, const std::string &logname)
 
std::shared_ptr< LogWebSocketnewWebSocket (Poco::Net::HTTPServerRequest *req, Poco::Net::HTTPServerResponse *resp, const std::string &logname)
 
void delWebSocket (std::shared_ptr< LogWebSocket > &ws)
 
void flushBuffer ()
 
void rotateDB ()
 
void onTerminate (ev::sig &evsig, int revents)
 
- Защищенные члены унаследованные от uniset::EventLoopServer
bool async_evrun (size_t waitRunningTimeout_msec=60000)
 
void evstop ()
 
bool evrun ()
 

Защищенные статические члены

static std::string qEscapeString (const std::string &s)
 
static std::string qLast (const std::string &p)
 
static std::string qDate (const std::string &p, const char sep='-')
 

Защищенные данные

std::string myname
 
std::unique_ptr< SQLiteInterfacedb
 
std::string tmsFormat = { "localtime" }
 
bool activate = { false }
 
QueryBuffer qbuf
 
size_t qbufSize = { 1000 }
 
ev::timer flushBufferTimer
 
double tmFlushBuffer_sec = { 1.0 }
 
size_t maxdbRecords = { 200 * 1000 }
 
size_t numOverflow = { 0 }
 
ev::sig sigTERM
 
ev::sig sigQUIT
 
ev::sig sigINT
 
ev::async wsactivate
 
std::vector< std::shared_ptr< Log > > logservers
 
std::shared_ptr< DebugStreamdblog
 
std::shared_ptr< Poco::Net::HTTPServer > httpserv
 
std::string httpHost = { "" }
 
int httpPort = { 0 }
 
std::string httpCORS_allow = { "*" }
 
std::string httpReplyAddr = { "" }
 
double wsHeartbeatTime_sec = { 3.0 }
 
double wsSendTime_sec = { 0.5 }
 
size_t wsMaxSend = { 200 }
 
std::string fgColor = { "#c4c4c4" }
 
std::string bgColor = { "#111111" }
 
std::string bgColorTitle = { "green" }
 
std::string fgColorTitle = { "#ececec" }
 
std::list< std::shared_ptr< LogWebSocket > > wsocks
 
uniset::uniset_rwmutex wsocksMutex
 
size_t maxwsocks = { 50 }
 
- Защищенные данные унаследованные от uniset::EventLoopServer
ev::dynamic_loop loop
 

Друзья

class LogWebSocketGuard
 

Подробное описание

Реализация LogDB

Методы

◆ evfinish()

void LogDB::evfinish ( )
overrideprotectedvirtual

Переопределяет метод предка uniset::EventLoopServer.

◆ evprepare()

void LogDB::evprepare ( )
overrideprotectedvirtual

Переопределяет метод предка uniset::EventLoopServer.

◆ help_print()

void LogDB::help_print ( )
static

глобальная функция для вывода help-а

◆ httpGetList()

Poco::JSON::Object::Ptr LogDB::httpGetList ( const Poco::URI::QueryParameters & p)
protected

◆ init_logdb()

std::shared_ptr< LogDB > LogDB::init_logdb ( int argc,
const char *const * argv,
const std::string & prefix = "logdb-" )
static

глобальная функция для инициализации объекта

Данные класса

◆ tmsFormat

std::string uniset::LogDB::tmsFormat = { "localtime" }
protected

формат возвращаемого времени