[TD-1263] add config items, logKeepDays and logbakDir
This commit is contained in:
parent
e5adfe5144
commit
e69fbd54a2
|
@ -94,6 +94,10 @@ void taos_init_imp(void) {
|
|||
printf("failed to create log dir:%s\n", tsLogDir);
|
||||
}
|
||||
|
||||
if (mkdir(tsLogbakDir, 0755) != 0 && errno != EEXIST) {
|
||||
printf("failed to create logbak dir:%s\n", tsLogbakDir);
|
||||
}
|
||||
|
||||
sprintf(temp, "%s/taoslog", tsLogDir);
|
||||
if (taosInitLog(temp, tsNumOfLogLines, 10) < 0) {
|
||||
printf("failed to open log file in directory:%s\n", tsLogDir);
|
||||
|
|
|
@ -126,6 +126,7 @@ extern char tsDnodeDir[];
|
|||
extern char tsMnodeDir[];
|
||||
extern char tsDataDir[];
|
||||
extern char tsLogDir[];
|
||||
extern char tsLogbakDir[];
|
||||
extern char tsScriptDir[];
|
||||
extern int64_t tsMsPerDay[3];
|
||||
extern char tsVnodeBakDir[];
|
||||
|
@ -158,6 +159,7 @@ extern char buildinfo[];
|
|||
// log
|
||||
extern int32_t tsAsyncLog;
|
||||
extern int32_t tsNumOfLogLines;
|
||||
extern int32_t tsLogKeepDays;
|
||||
extern int32_t dDebugFlag;
|
||||
extern int32_t vDebugFlag;
|
||||
extern int32_t mDebugFlag;
|
||||
|
|
|
@ -370,6 +370,16 @@ static void doInitGlobalConfig(void) {
|
|||
cfg.unitType = TAOS_CFG_UTYPE_NONE;
|
||||
taosInitConfigOption(cfg);
|
||||
|
||||
cfg.option = "logBakDir";
|
||||
cfg.ptr = tsLogbakDir;
|
||||
cfg.valType = TAOS_CFG_VTYPE_DIRECTORY;
|
||||
cfg.cfgType = TSDB_CFG_CTYPE_B_CONFIG | TSDB_CFG_CTYPE_B_CLIENT | TSDB_CFG_CTYPE_B_LOG;
|
||||
cfg.minValue = 0;
|
||||
cfg.maxValue = 0;
|
||||
cfg.ptrLength = TSDB_FILENAME_LEN;
|
||||
cfg.unitType = TAOS_CFG_UTYPE_NONE;
|
||||
taosInitConfigOption(cfg);
|
||||
|
||||
cfg.option = "scriptDir";
|
||||
cfg.ptr = tsScriptDir;
|
||||
cfg.valType = TAOS_CFG_VTYPE_DIRECTORY;
|
||||
|
@ -1019,6 +1029,16 @@ static void doInitGlobalConfig(void) {
|
|||
cfg.unitType = TAOS_CFG_UTYPE_NONE;
|
||||
taosInitConfigOption(cfg);
|
||||
|
||||
cfg.option = "logKeepDays";
|
||||
cfg.ptr = &tsNumOfLogLines;
|
||||
cfg.valType = TAOS_CFG_VTYPE_INT32;
|
||||
cfg.cfgType = TSDB_CFG_CTYPE_B_CONFIG | TSDB_CFG_CTYPE_B_LOG | TSDB_CFG_CTYPE_B_CLIENT;
|
||||
cfg.minValue = 0;
|
||||
cfg.maxValue = 3650;
|
||||
cfg.ptrLength = 0;
|
||||
cfg.unitType = TAOS_CFG_UTYPE_NONE;
|
||||
taosInitConfigOption(cfg);
|
||||
|
||||
cfg.option = "asyncLog";
|
||||
cfg.ptr = &tsAsyncLog;
|
||||
cfg.valType = TAOS_CFG_VTYPE_INT16;
|
||||
|
|
|
@ -106,6 +106,11 @@ int32_t dnodeInitSystem() {
|
|||
return -1;
|
||||
}
|
||||
|
||||
if (dnodeCreateDir(tsLogbakDir) < 0) {
|
||||
printf("failed to create dir: %s, reason: %s\n", tsLogbakDir, strerror(errno));
|
||||
return -1;
|
||||
}
|
||||
|
||||
char temp[TSDB_FILENAME_LEN];
|
||||
sprintf(temp, "%s/taosdlog", tsLogDir);
|
||||
if (taosInitLog(temp, tsNumOfLogLines, 1) < 0) {
|
||||
|
|
|
@ -27,6 +27,7 @@ void osInit() {
|
|||
strcpy(tsMnodeDir, "");
|
||||
strcpy(tsDataDir, "/var/lib/taos");
|
||||
strcpy(tsLogDir, "/var/log/taos");
|
||||
strcpy(tsLogbakDir, "/var/log/taos/bak");
|
||||
strcpy(tsScriptDir, "/etc/taos");
|
||||
strcpy(tsOsName, "Linux");
|
||||
}
|
|
@ -27,6 +27,7 @@ void osInit() {
|
|||
strcpy(tsMnodeDir, "");
|
||||
strcpy(tsDataDir, "~/TDengine/data");
|
||||
strcpy(tsLogDir, "~/TDengine/log");
|
||||
strcpy(tsLogbakDir, "~/TDengine/log/bak");
|
||||
strcpy(tsScriptDir, "~/TDengine/cfg");
|
||||
strcpy(tsOsName, "Darwin");
|
||||
}
|
||||
|
|
|
@ -25,6 +25,7 @@ void osInit() {
|
|||
}
|
||||
strcpy(tsDataDir, "/var/lib/power");
|
||||
strcpy(tsLogDir, "/var/log/power");
|
||||
strcpy(tsLogbakDir, "/var/log/power/bak");
|
||||
strcpy(tsScriptDir, "/etc/power");
|
||||
#else
|
||||
if (configDir[0] == 0) {
|
||||
|
@ -32,6 +33,7 @@ void osInit() {
|
|||
}
|
||||
strcpy(tsDataDir, "/var/lib/taos");
|
||||
strcpy(tsLogDir, "/var/log/taos");
|
||||
strcpy(tsLogbakDir, "/var/log/taos/bak");
|
||||
strcpy(tsScriptDir, "/etc/taos");
|
||||
#endif
|
||||
|
||||
|
|
|
@ -30,6 +30,7 @@ void osInit() {
|
|||
strcpy(tsVnodeDir, "C:/PowerDB/data");
|
||||
strcpy(tsDataDir, "C:/PowerDB/data");
|
||||
strcpy(tsLogDir, "C:/PowerDB/log");
|
||||
strcpy(tsLogbakDir, "C:/PowerDB/log/bak");
|
||||
strcpy(tsScriptDir, "C:/PowerDB/script");
|
||||
|
||||
#else
|
||||
|
@ -40,6 +41,7 @@ void osInit() {
|
|||
strcpy(tsVnodeDir, "C:/TDengine/data");
|
||||
strcpy(tsDataDir, "C:/TDengine/data");
|
||||
strcpy(tsLogDir, "C:/TDengine/log");
|
||||
strcpy(tsLogbakDir, "C:/TDengine/log/bak");
|
||||
strcpy(tsScriptDir, "C:/TDengine/script");
|
||||
#endif
|
||||
|
||||
|
|
|
@ -270,7 +270,7 @@ void taosReadGlobalLogCfg() {
|
|||
}
|
||||
wordfree(&full_path);
|
||||
|
||||
taosReadLogOption("tsLogDir", tsLogDir);
|
||||
taosReadLogOption("logDir", tsLogDir);
|
||||
|
||||
sprintf(fileName, "%s/taos.cfg", configDir);
|
||||
fp = fopen(fileName, "r");
|
||||
|
@ -288,9 +288,9 @@ void taosReadGlobalLogCfg() {
|
|||
option = value = NULL;
|
||||
olen = vlen = 0;
|
||||
|
||||
taosGetline(&line, &len, fp);
|
||||
taosGetline(&line, &len, fp);
|
||||
line[len - 1] = 0;
|
||||
|
||||
|
||||
paGetToken(line, &option, &olen);
|
||||
if (olen == 0) continue;
|
||||
option[olen] = 0;
|
||||
|
|
|
@ -62,14 +62,17 @@ typedef struct {
|
|||
pthread_mutex_t logMutex;
|
||||
} SLogObj;
|
||||
|
||||
int32_t tsLogKeepDays = 0;
|
||||
int32_t tsAsyncLog = 1;
|
||||
float tsTotalLogDirGB = 0;
|
||||
float tsAvailLogDirGB = 0;
|
||||
float tsMinimalLogDirGB = 0.1f;
|
||||
#ifdef _TD_POWER_
|
||||
char tsLogDir[TSDB_FILENAME_LEN] = "/var/log/power";
|
||||
char tsLogbakDir[TSDB_FILENAME_LEN] = "/var/log/power/bak";
|
||||
#else
|
||||
char tsLogDir[TSDB_FILENAME_LEN] = "/var/log/taos";
|
||||
char tsLogbakDir[TSDB_FILENAME_LEN] = "/var/log/taos/bak";
|
||||
#endif
|
||||
|
||||
static SLogObj tsLogObj = { .fileNum = 1 };
|
||||
|
|
Loading…
Reference in New Issue