fix/TD-30877

This commit is contained in:
dmchen 2024-07-04 10:00:50 +00:00
parent 80d388fa25
commit 587df3b86d
1 changed files with 8 additions and 3 deletions

View File

@ -29,6 +29,10 @@ typedef struct {
uint64_t nice;
uint64_t system;
uint64_t idle;
uint64_t wa;
uint64_t hi;
uint64_t si;
uint64_t st;
} SysCpuInfo;
typedef struct {
@ -173,8 +177,9 @@ static int32_t taosGetSysCpuInfo(SysCpuInfo *cpuInfo) {
}
char cpu[10] = {0};
sscanf(line, "%s %" PRIu64 " %" PRIu64 " %" PRIu64 " %" PRIu64, cpu, &cpuInfo->user, &cpuInfo->nice, &cpuInfo->system,
&cpuInfo->idle);
sscanf(line, "%s %" PRIu64 " %" PRIu64 " %" PRIu64 " %" PRIu64 " %" PRIu64 " %" PRIu64 " %" PRIu64 " %" PRIu64, cpu,
&cpuInfo->user, &cpuInfo->nice, &cpuInfo->system, &cpuInfo->idle, &cpuInfo->wa, &cpuInfo->hi, &cpuInfo->si,
&cpuInfo->st);
taosCloseFile(&pFile);
#endif
@ -576,7 +581,7 @@ void taosGetCpuUsage(double *cpu_system, double *cpu_engine) {
SysCpuInfo sysCpu = {0};
ProcCpuInfo procCpu = {0};
if (taosGetSysCpuInfo(&sysCpu) == 0 && taosGetProcCpuInfo(&procCpu) == 0) {
curSysUsed = sysCpu.user + sysCpu.nice + sysCpu.system;
curSysUsed = sysCpu.user + sysCpu.nice + sysCpu.system + sysCpu.wa + sysCpu.hi + sysCpu.si + sysCpu.st;
curSysTotal = curSysUsed + sysCpu.idle;
curProcTotal = procCpu.utime + procCpu.stime + procCpu.cutime + procCpu.cstime;