feat: add logger with write to file

This commit is contained in:
semenov
2025-08-06 16:04:53 +03:00
parent 305fcb2fad
commit 34dddad3cd
20 changed files with 213 additions and 154 deletions

View File

@@ -1,18 +1,16 @@
#include "multithreadserver.h"
MultiThreadServer::MultiThreadServer(ServerLMSWidget *widget,UpdateController *updateController,ProcessingSystem *processingSystem,
DataParser *dataParser,Logger *logger,qint16 hostPort, QObject *parent ):
DataParser *dataParser,qint16 hostPort, QObject *parent ):
QTcpServer(parent),
serverLmsWidget(widget),
hostPort(hostPort),
processingSystem(processingSystem),
updateController(updateController),
dataParser(dataParser),
logger(logger),
stateServer(stoped),
stateBlockAutorization(unblocked)
{
connect(this,&MultiThreadServer::sigSendToLogger,logger,&Logger::addTextToLogger);
clientsMap = new QMap<int,ClientHandler*>;
}
@@ -22,13 +20,12 @@ void MultiThreadServer::incomingConnection(qintptr socketDesriptor)
connect(this,&MultiThreadServer::sigInitClient,newClient,&ClientHandler::initialize,Qt::AutoConnection);
connect(newClient,&ClientHandler::sigClientDisconnected,this,&MultiThreadServer::slotDisconnectClient,Qt::AutoConnection);
emit sigInitClient(socketDesriptor,serverLmsWidget,updateController,dataParser,logger);
emit sigInitClient(socketDesriptor,serverLmsWidget,updateController,dataParser);
disconnect(this,&MultiThreadServer::sigInitClient,newClient,&ClientHandler::initialize);
addClient(socketDesriptor,newClient);
emit sigSendToLogger("To Client: " + QString(SERVER_HELLO));
Logger::instance().log("To Client: " + QString(SERVER_HELLO));
}
bool MultiThreadServer::startServer()
@@ -39,13 +36,13 @@ bool MultiThreadServer::startServer()
if(!listen(QHostAddress::Any, hostPort))
{
logger->addTextToLogger("SERVER: start ERROR");
Logger::instance().log("SERVER: start ERROR");
stateServer = stoped;
return false;
}
else
{
logger->addTextToLogger("SERVER: start OK");
Logger::instance().log("SERVER: start OK");
stateServer = started;
return true;
}
@@ -131,7 +128,7 @@ void MultiThreadServer::slotDisconnectClient(QString peerAddress, QString peerPo
}
emit signalStopSendFile();
emit sigSendToLogger("SERVER: Client " + login + " disconnected");
Logger::instance().log("SERVER: Client " + login + " disconnected");
serverLmsWidget->slotUpdateListClients();
serverLmsWidget->getProcessingSystem()->processingClientDeAutorization(login);