From 3a2d56ff13dc4ab45cf58927d24ac72d85739526 Mon Sep 17 00:00:00 2001 From: shenchenkai Date: Wed, 27 Oct 2021 09:17:39 +0000 Subject: [PATCH] support output millisecond in hilog Signed-off-by: shenchenkai Change-Id: If14a0b62f581bca3404829636a0ab61cdab4d591 --- frameworks/mini/hiview_log.c | 8 ++++++-- frameworks/mini/hiview_output_log.c | 7 +++---- interfaces/native/kits/hilog_lite/hiview_log.h | 1 + 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/frameworks/mini/hiview_log.c b/frameworks/mini/hiview_log.c index 57894c5..76c8927 100755 --- a/frameworks/mini/hiview_log.c +++ b/frameworks/mini/hiview_log.c @@ -124,7 +124,9 @@ void HiLogPrintf(uint8 module, uint8 level, const char *nums, const char *fmt, . pCommon->fmt = fmt; pCommon->valueNumber = (uint8)argsNum; pCommon->task = (uint8)HIVIEW_GetTaskId(); - pCommon->time = (uint32)(HIVIEW_GetCurrentTime() / MS_PER_SECOND); + uint64 cur = HIVIEW_GetCurrentTime(); + pCommon->time = (uint32)(cur / MS_PER_SECOND); + pCommon->milli = (uint16)(cur % MS_PER_SECOND); uint8 i = 0; va_list args; @@ -157,7 +159,9 @@ void HILOG_HashPrintf(uint8 module, uint8 level, const char *nums, uint32 hash, pCommon->fmt = (const char*)hash; pCommon->valueNumber = (uint8)argsNum; pCommon->task = (uint8)HIVIEW_GetTaskId(); - pCommon->time = (uint32)(HIVIEW_GetCurrentTime() / MS_PER_SECOND); + uint64 cur = HIVIEW_GetCurrentTime(); + pCommon->time = (uint32)(cur / MS_PER_SECOND); + pCommon->milli = (uint16)(cur % MS_PER_SECOND); uint8 i = 0; va_list args; diff --git a/frameworks/mini/hiview_output_log.c b/frameworks/mini/hiview_output_log.c index b1924fc..3735b7d 100755 --- a/frameworks/mini/hiview_output_log.c +++ b/frameworks/mini/hiview_output_log.c @@ -368,21 +368,20 @@ static int32 LogCommonFmt(char *outStr, int32 outStrLen, const HiLogCommon *comm { int32 ret; time_t time; - uint32 year, month, day, hour, min, sec; + uint32 month, day, hour, min, sec; uint8_t level; struct tm nowTime = {0}; time = commonContentPtr->time; localtime_r(&time, &nowTime); - year = nowTime.tm_year + 1900; month = nowTime.tm_mon + 1; day = nowTime.tm_mday; hour = nowTime.tm_hour; min = nowTime.tm_min; sec = nowTime.tm_sec; level = CLEAR_HASH_FLAG(commonContentPtr->level); - ret = snprintf_s(outStr, outStrLen, outStrLen - 1, "%04d-%02d-%02d %02d:%02d:%02d 0 %d %c %d/%s: ", - year, month, day, hour, min, sec, commonContentPtr->task, g_logLevelInfo[level], + ret = snprintf_s(outStr, outStrLen, outStrLen - 1, "%02d-%02d %02d:%02d:%02d.%03d 0 %d %c %d/%s: ", + month, day, hour, min, sec, commonContentPtr->milli, commonContentPtr->task, g_logLevelInfo[level], commonContentPtr->module, HiLogGetModuleName(commonContentPtr->module)); return ret; diff --git a/interfaces/native/kits/hilog_lite/hiview_log.h b/interfaces/native/kits/hilog_lite/hiview_log.h index 90892e2..7dc7798 100755 --- a/interfaces/native/kits/hilog_lite/hiview_log.h +++ b/interfaces/native/kits/hilog_lite/hiview_log.h @@ -140,6 +140,7 @@ typedef struct { uint8 valueNumber : 4; uint8 task; uint32 time; /* seconds */ + uint16 milli; /* millisecond, 0-999 */ const char *fmt; } HiLogCommon; -- Gitee