From 561a0eca5769079e89fe96376a584e092fc25330 Mon Sep 17 00:00:00 2001 From: Thulinma Date: Wed, 4 May 2016 18:07:09 +0200 Subject: [PATCH] Controller fixes. --- src/controller/controller_capabilities.cpp | 6 +++++- src/controller/controller_statistics.cpp | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/controller/controller_capabilities.cpp b/src/controller/controller_capabilities.cpp index bf5f712c..add8c99e 100644 --- a/src/controller/controller_capabilities.cpp +++ b/src/controller/controller_capabilities.cpp @@ -278,7 +278,11 @@ namespace Controller { unsigned long long c_user, c_nice, c_syst, c_idle, c_total; if (sscanf(line, "cpu %Lu %Lu %Lu %Lu", &c_user, &c_nice, &c_syst, &c_idle) == 4){ c_total = c_user + c_nice + c_syst + c_idle; - capa["cpu_use"] = (long long int)(1000 - ((c_idle - cl_idle) * 1000) / (c_total - cl_total)); + if (c_total - cl_total > 0){ + capa["cpu_use"] = (long long int)(1000 - ((c_idle - cl_idle) * 1000) / (c_total - cl_total)); + }else{ + capa["cpu_use"] = 0ll; + } cl_total = c_total; cl_idle = c_idle; break; diff --git a/src/controller/controller_statistics.cpp b/src/controller/controller_statistics.cpp index 5523446b..4220af31 100644 --- a/src/controller/controller_statistics.cpp +++ b/src/controller/controller_statistics.cpp @@ -1005,7 +1005,11 @@ void Controller::handlePrometheus(HTTP::Parser & H, Socket::Connection & conn, i unsigned long long c_user, c_nice, c_syst, c_idle, c_total; if (sscanf(line, "cpu %Lu %Lu %Lu %Lu", &c_user, &c_nice, &c_syst, &c_idle) == 4){ c_total = c_user + c_nice + c_syst + c_idle; - cpu_use = (long long int)(1000 - ((c_idle - cl_idle) * 1000) / (c_total - cl_total)); + if (c_total - cl_total > 0){ + cpu_use = (long long int)(1000 - ((c_idle - cl_idle) * 1000) / (c_total - cl_total)); + }else{ + cpu_use = 0; + } cl_total = c_total; cl_idle = c_idle; break;