fix: monitor reports log summary

This commit is contained in:
Shungang Li 2023-07-25 14:16:52 +08:00
parent d78f28ce2e
commit 0b167c94f3
2 changed files with 14 additions and 20 deletions

View File

@ -468,9 +468,6 @@ static void monGenLogJson(SMonInfo *pMonitor) {
return; return;
} }
SJson *pLogsJson = tjsonAddArrayToObject(pJson, "logs");
if (pLogsJson == NULL) return;
SMonLogs *logs[6]; SMonLogs *logs[6];
logs[0] = &pMonitor->log; logs[0] = &pMonitor->log;
logs[1] = &pMonitor->mmInfo.log; logs[1] = &pMonitor->mmInfo.log;
@ -490,22 +487,6 @@ static void monGenLogJson(SMonInfo *pMonitor) {
numOfInfoLogs += pLog->numOfInfoLogs; numOfInfoLogs += pLog->numOfInfoLogs;
numOfDebugLogs += pLog->numOfDebugLogs; numOfDebugLogs += pLog->numOfDebugLogs;
numOfTraceLogs += pLog->numOfTraceLogs; numOfTraceLogs += pLog->numOfTraceLogs;
for (int32_t i = 0; i < taosArrayGetSize(pLog->logs); ++i) {
SJson *pLogJson = tjsonCreateObject();
if (pLogJson == NULL) continue;
SMonLogItem *pLogItem = taosArrayGet(pLog->logs, i);
char buf[40] = {0};
taosFormatUtcTime(buf, sizeof(buf), pLogItem->ts, TSDB_TIME_PRECISION_MILLI);
tjsonAddStringToObject(pLogJson, "ts", buf);
tjsonAddStringToObject(pLogJson, "level", monLogLevelStr(pLogItem->level));
tjsonAddStringToObject(pLogJson, "content", pLogItem->content);
if (tjsonAddItemToArray(pLogsJson, pLogJson) != 0) tjsonDelete(pLogJson);
}
} }
SJson *pSummaryJson = tjsonAddArrayToObject(pJson, "summary"); SJson *pSummaryJson = tjsonAddArrayToObject(pJson, "summary");
@ -547,7 +528,7 @@ void monSendReport() {
monGenGrantJson(pMonitor); monGenGrantJson(pMonitor);
monGenDnodeJson(pMonitor); monGenDnodeJson(pMonitor);
monGenDiskJson(pMonitor); monGenDiskJson(pMonitor);
//monGenLogJson(pMonitor); // TS-3691 monGenLogJson(pMonitor);
char *pCont = tjsonToString(pMonitor->pJson); char *pCont = tjsonToString(pMonitor->pJson);
// uDebugL("report cont:%s\n", pCont); // uDebugL("report cont:%s\n", pCont);

View File

@ -185,6 +185,19 @@ class RequestHandlerImpl(http.server.BaseHTTPRequestHandler):
if "total" not in infoDict["disk_infos"]["tempdir"] or infoDict["disk_infos"]["tempdir"]["total"] <= 0: if "total" not in infoDict["disk_infos"]["tempdir"] or infoDict["disk_infos"]["tempdir"]["total"] <= 0:
tdLog.exit("total is null!") tdLog.exit("total is null!")
# log_infos ====================================
if "log_infos" not in infoDict or infoDict["log_infos"]== None:
tdLog.exit("log_infos is null!")
if "summary" not in infoDict["log_infos"] or len(infoDict["log_infos"]["summary"])!= 4:
tdLog.exit("summary is null!")
if "total" not in infoDict["log_infos"]["summary"][0] or infoDict["log_infos"]["summary"][0]["total"] < 0 :
tdLog.exit("total is null!")
if "level" not in infoDict["log_infos"]["summary"][0] or infoDict["log_infos"]["summary"][0]["level"] not in ["error" ,"info" , "debug" ,"trace"]:
tdLog.exit("level is null!")
def do_GET(self): def do_GET(self):
""" """