[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);
|
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);
|
sprintf(temp, "%s/taoslog", tsLogDir);
|
||||||
if (taosInitLog(temp, tsNumOfLogLines, 10) < 0) {
|
if (taosInitLog(temp, tsNumOfLogLines, 10) < 0) {
|
||||||
printf("failed to open log file in directory:%s\n", tsLogDir);
|
printf("failed to open log file in directory:%s\n", tsLogDir);
|
||||||
|
|
|
@ -126,6 +126,7 @@ extern char tsDnodeDir[];
|
||||||
extern char tsMnodeDir[];
|
extern char tsMnodeDir[];
|
||||||
extern char tsDataDir[];
|
extern char tsDataDir[];
|
||||||
extern char tsLogDir[];
|
extern char tsLogDir[];
|
||||||
|
extern char tsLogbakDir[];
|
||||||
extern char tsScriptDir[];
|
extern char tsScriptDir[];
|
||||||
extern int64_t tsMsPerDay[3];
|
extern int64_t tsMsPerDay[3];
|
||||||
extern char tsVnodeBakDir[];
|
extern char tsVnodeBakDir[];
|
||||||
|
@ -158,6 +159,7 @@ extern char buildinfo[];
|
||||||
// log
|
// log
|
||||||
extern int32_t tsAsyncLog;
|
extern int32_t tsAsyncLog;
|
||||||
extern int32_t tsNumOfLogLines;
|
extern int32_t tsNumOfLogLines;
|
||||||
|
extern int32_t tsLogKeepDays;
|
||||||
extern int32_t dDebugFlag;
|
extern int32_t dDebugFlag;
|
||||||
extern int32_t vDebugFlag;
|
extern int32_t vDebugFlag;
|
||||||
extern int32_t mDebugFlag;
|
extern int32_t mDebugFlag;
|
||||||
|
|
|
@ -370,6 +370,16 @@ static void doInitGlobalConfig(void) {
|
||||||
cfg.unitType = TAOS_CFG_UTYPE_NONE;
|
cfg.unitType = TAOS_CFG_UTYPE_NONE;
|
||||||
taosInitConfigOption(cfg);
|
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.option = "scriptDir";
|
||||||
cfg.ptr = tsScriptDir;
|
cfg.ptr = tsScriptDir;
|
||||||
cfg.valType = TAOS_CFG_VTYPE_DIRECTORY;
|
cfg.valType = TAOS_CFG_VTYPE_DIRECTORY;
|
||||||
|
@ -1019,6 +1029,16 @@ static void doInitGlobalConfig(void) {
|
||||||
cfg.unitType = TAOS_CFG_UTYPE_NONE;
|
cfg.unitType = TAOS_CFG_UTYPE_NONE;
|
||||||
taosInitConfigOption(cfg);
|
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.option = "asyncLog";
|
||||||
cfg.ptr = &tsAsyncLog;
|
cfg.ptr = &tsAsyncLog;
|
||||||
cfg.valType = TAOS_CFG_VTYPE_INT16;
|
cfg.valType = TAOS_CFG_VTYPE_INT16;
|
||||||
|
|
|
@ -106,6 +106,11 @@ int32_t dnodeInitSystem() {
|
||||||
return -1;
|
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];
|
char temp[TSDB_FILENAME_LEN];
|
||||||
sprintf(temp, "%s/taosdlog", tsLogDir);
|
sprintf(temp, "%s/taosdlog", tsLogDir);
|
||||||
if (taosInitLog(temp, tsNumOfLogLines, 1) < 0) {
|
if (taosInitLog(temp, tsNumOfLogLines, 1) < 0) {
|
||||||
|
|
|
@ -27,6 +27,7 @@ void osInit() {
|
||||||
strcpy(tsMnodeDir, "");
|
strcpy(tsMnodeDir, "");
|
||||||
strcpy(tsDataDir, "/var/lib/taos");
|
strcpy(tsDataDir, "/var/lib/taos");
|
||||||
strcpy(tsLogDir, "/var/log/taos");
|
strcpy(tsLogDir, "/var/log/taos");
|
||||||
|
strcpy(tsLogbakDir, "/var/log/taos/bak");
|
||||||
strcpy(tsScriptDir, "/etc/taos");
|
strcpy(tsScriptDir, "/etc/taos");
|
||||||
strcpy(tsOsName, "Linux");
|
strcpy(tsOsName, "Linux");
|
||||||
}
|
}
|
|
@ -27,6 +27,7 @@ void osInit() {
|
||||||
strcpy(tsMnodeDir, "");
|
strcpy(tsMnodeDir, "");
|
||||||
strcpy(tsDataDir, "~/TDengine/data");
|
strcpy(tsDataDir, "~/TDengine/data");
|
||||||
strcpy(tsLogDir, "~/TDengine/log");
|
strcpy(tsLogDir, "~/TDengine/log");
|
||||||
|
strcpy(tsLogbakDir, "~/TDengine/log/bak");
|
||||||
strcpy(tsScriptDir, "~/TDengine/cfg");
|
strcpy(tsScriptDir, "~/TDengine/cfg");
|
||||||
strcpy(tsOsName, "Darwin");
|
strcpy(tsOsName, "Darwin");
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,6 +25,7 @@ void osInit() {
|
||||||
}
|
}
|
||||||
strcpy(tsDataDir, "/var/lib/power");
|
strcpy(tsDataDir, "/var/lib/power");
|
||||||
strcpy(tsLogDir, "/var/log/power");
|
strcpy(tsLogDir, "/var/log/power");
|
||||||
|
strcpy(tsLogbakDir, "/var/log/power/bak");
|
||||||
strcpy(tsScriptDir, "/etc/power");
|
strcpy(tsScriptDir, "/etc/power");
|
||||||
#else
|
#else
|
||||||
if (configDir[0] == 0) {
|
if (configDir[0] == 0) {
|
||||||
|
@ -32,6 +33,7 @@ void osInit() {
|
||||||
}
|
}
|
||||||
strcpy(tsDataDir, "/var/lib/taos");
|
strcpy(tsDataDir, "/var/lib/taos");
|
||||||
strcpy(tsLogDir, "/var/log/taos");
|
strcpy(tsLogDir, "/var/log/taos");
|
||||||
|
strcpy(tsLogbakDir, "/var/log/taos/bak");
|
||||||
strcpy(tsScriptDir, "/etc/taos");
|
strcpy(tsScriptDir, "/etc/taos");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -30,6 +30,7 @@ void osInit() {
|
||||||
strcpy(tsVnodeDir, "C:/PowerDB/data");
|
strcpy(tsVnodeDir, "C:/PowerDB/data");
|
||||||
strcpy(tsDataDir, "C:/PowerDB/data");
|
strcpy(tsDataDir, "C:/PowerDB/data");
|
||||||
strcpy(tsLogDir, "C:/PowerDB/log");
|
strcpy(tsLogDir, "C:/PowerDB/log");
|
||||||
|
strcpy(tsLogbakDir, "C:/PowerDB/log/bak");
|
||||||
strcpy(tsScriptDir, "C:/PowerDB/script");
|
strcpy(tsScriptDir, "C:/PowerDB/script");
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
@ -40,6 +41,7 @@ void osInit() {
|
||||||
strcpy(tsVnodeDir, "C:/TDengine/data");
|
strcpy(tsVnodeDir, "C:/TDengine/data");
|
||||||
strcpy(tsDataDir, "C:/TDengine/data");
|
strcpy(tsDataDir, "C:/TDengine/data");
|
||||||
strcpy(tsLogDir, "C:/TDengine/log");
|
strcpy(tsLogDir, "C:/TDengine/log");
|
||||||
|
strcpy(tsLogbakDir, "C:/TDengine/log/bak");
|
||||||
strcpy(tsScriptDir, "C:/TDengine/script");
|
strcpy(tsScriptDir, "C:/TDengine/script");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -270,7 +270,7 @@ void taosReadGlobalLogCfg() {
|
||||||
}
|
}
|
||||||
wordfree(&full_path);
|
wordfree(&full_path);
|
||||||
|
|
||||||
taosReadLogOption("tsLogDir", tsLogDir);
|
taosReadLogOption("logDir", tsLogDir);
|
||||||
|
|
||||||
sprintf(fileName, "%s/taos.cfg", configDir);
|
sprintf(fileName, "%s/taos.cfg", configDir);
|
||||||
fp = fopen(fileName, "r");
|
fp = fopen(fileName, "r");
|
||||||
|
|
|
@ -62,14 +62,17 @@ typedef struct {
|
||||||
pthread_mutex_t logMutex;
|
pthread_mutex_t logMutex;
|
||||||
} SLogObj;
|
} SLogObj;
|
||||||
|
|
||||||
|
int32_t tsLogKeepDays = 0;
|
||||||
int32_t tsAsyncLog = 1;
|
int32_t tsAsyncLog = 1;
|
||||||
float tsTotalLogDirGB = 0;
|
float tsTotalLogDirGB = 0;
|
||||||
float tsAvailLogDirGB = 0;
|
float tsAvailLogDirGB = 0;
|
||||||
float tsMinimalLogDirGB = 0.1f;
|
float tsMinimalLogDirGB = 0.1f;
|
||||||
#ifdef _TD_POWER_
|
#ifdef _TD_POWER_
|
||||||
char tsLogDir[TSDB_FILENAME_LEN] = "/var/log/power";
|
char tsLogDir[TSDB_FILENAME_LEN] = "/var/log/power";
|
||||||
|
char tsLogbakDir[TSDB_FILENAME_LEN] = "/var/log/power/bak";
|
||||||
#else
|
#else
|
||||||
char tsLogDir[TSDB_FILENAME_LEN] = "/var/log/taos";
|
char tsLogDir[TSDB_FILENAME_LEN] = "/var/log/taos";
|
||||||
|
char tsLogbakDir[TSDB_FILENAME_LEN] = "/var/log/taos/bak";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static SLogObj tsLogObj = { .fileNum = 1 };
|
static SLogObj tsLogObj = { .fileNum = 1 };
|
||||||
|
|
Loading…
Reference in New Issue