2024年3月30日发(作者:)
#include "FileOperation.h"
using namespace FrameWork;
LogSizeLimit::LogSizeLimit(const string iniFile) :
_iniFile(iniFile), changeFlag(true) {
}
LogSizeLimit::~LogSizeLimit() {
}
bool LogSizeLimit::start() {
pthread_t tid, changetid;
pthread_create(&tid, NULL, run, (void*) this);
pthread_create(&changetid, NULL, listenChanged, (void*) this);
return true;
}
bool LogSizeLimit::readConfig() {
//Clean map vars
map
while (iter_tmp != _()) {
_(iter_tmp);
iter_tmp++;
}
//Clean map vars
iter_tmp = _();
while (iter_tmp != _()) {
_(iter_tmp);
iter_tmp++;
}
//Clean map vars
map
while (mvIter_tmp != _()) {
_(mvIter_tmp);
mvIter_tmp++;
}
if (!FileOperation::isExistFile(_iniFile)) {
Logger::GetInstance().Fatal("Can not find ini file : %s !",
_iniFile.c_str());
return false;
}
//Create ini file handling var.
IniConfigFile iniSet(_iniFile.c_str());
INT8 logPath[LogFilePathMaxLen] = { 0 };
INT8 logFileAttr[LogFileAttrMaxLen] = { 0 };
INT8 specialFile_1[LogFilePathMaxLen] = { 0 };
INT8 specialFileAttr_1[LogFileAttrMaxLen] = { 0 };
const INT8 *catelogBase = "catelog_";
const INT8 *limitBase = "logSizeLimit_";
const INT8 *specialFileBase = "specialFile_";
const INT8 *specialLimitBase = "specialFileSizeLimit_";
INT8 catelogCnt = '1';
bool isExist = true;
INT8 catelogIndex[32] = { 0 };
INT8 logSizeIndex[32] = { 0 };
while (isExist) {
memset(catelogIndex, 0, 32);
memset(logSizeIndex, 0, 32);
memset(logPath, 0, LogFilePathMaxLen);
memset(logFileAttr, 0, LogFileAttrMaxLen);
memcpy(catelogIndex, catelogBase, strlen(catelogBase));
memcpy(catelogIndex + strlen(catelogBase), &catelogCnt, 1);
memcpy(logSizeIndex, limitBase, strlen(limitBase));
memcpy(logSizeIndex + strlen(limitBase), &catelogCnt, 1);
//section key value
do {
if (iConfFile("LogSizeManage", catelogIndex, logPath,
LogFilePathMaxLen) != true) {
Logger::GetInstance().Error("Can not locate %s !",
catelogIndex);
isExist = false;
break;
} else


发布评论