]> git.ipfire.org Git - thirdparty/snort3.git/commitdiff
Pull request #4396: main: fix coverage for show snort cpu command
authorRishabh Choudhary (rishacho) <rishacho@cisco.com>
Mon, 29 Jul 2024 05:54:00 +0000 (05:54 +0000)
committerShanmugam S (shanms) <shanms@cisco.com>
Mon, 29 Jul 2024 05:54:00 +0000 (05:54 +0000)
Merge in SNORT/snort3 from ~RISHACHO/snort3:cpu_usage_snort to master

Squashed commit of the following:

commit c8dcd376b5fe4a0e6a53eb31731badfe490885b8
Author: Rishabh Choudhary <rishacho@cisco.com>
Date:   Wed Jul 24 13:19:46 2024 +0530

    main: fix coverage
    Replace an impossible condition with assert statement.

src/main/analyzer_command.cc
src/main/analyzer_command.h

index 77a6952cb82a5214e8688685b7516935caf1bae0..daa5ff03b3d99e46e34945da896ad289ef4c4487 100644 (file)
@@ -277,20 +277,18 @@ ACShowSnortCPU::~ACShowSnortCPU()
     if (DAQ_SUCCESS == status)
     {
         LogRespond(ctrlcon, "\nSummary \t%.1f%% \t%.1f%% \t%.1f%%\n",
-                   cpu_usage_30s/instance_num,
-                   cpu_usage_120s/instance_num,
-                   cpu_usage_300s/instance_num);
+            cpu_usage_30s/instance_num, cpu_usage_120s/instance_num,
+            cpu_usage_300s/instance_num);
     }
 }
 
 bool ACShowSnortCPU::execute(Analyzer& analyzer, void**)
 {
     DIOCTL_GetCpuProfileData get_data = {};
-    do
+
     {
         std::lock_guard<std::mutex> lock(cpu_usage_mutex);
-        if (DAQ_SUCCESS != status)
-            break;
+        assert(DAQ_SUCCESS == status);
 
         SFDAQInstance* instance = get_daq_instance(analyzer);
         ThreadConfig *thread_config = SnortConfig::get_conf()->thread_config;
@@ -304,24 +302,24 @@ bool ACShowSnortCPU::execute(Analyzer& analyzer, void**)
         if (DAQ_SUCCESS != status)
         {
             LogRespond(ctrlcon, "Fetching profile data failed from DAQ instance\n");
-            break;
+            return true; 
         }
 
+        double cpu_30s = static_cast<double> (get_data.cpu_usage_percent_30s);
+        double cpu_120s = static_cast<double> (get_data.cpu_usage_percent_120s);
+        double cpu_300s = static_cast<double> (get_data.cpu_usage_percent_300s);
+
         // Print CPU usage
         LogRespond(ctrlcon, "%-3d \t%-6d \t%.1f%% \t%.1f%% \t%.1f%%\n",
-                   instance_num,
-                   tid,
-                   get_data.cpu_usage_percent_30s,
-                   get_data.cpu_usage_percent_120s,
-                   get_data.cpu_usage_percent_300s);
+            instance_num, tid, cpu_30s, cpu_120s, cpu_300s);
 
         // Add CPU usage data
-        cpu_usage_30s += get_data.cpu_usage_percent_30s;
-        cpu_usage_120s += get_data.cpu_usage_percent_120s;
-        cpu_usage_300s += get_data.cpu_usage_percent_300s;
+        cpu_usage_30s += cpu_30s;
+        cpu_usage_120s += cpu_120s;
+        cpu_usage_300s += cpu_300s;
         instance_num++;
 
-    } while (0);
+    }
 
     return true;
 }
index b54438d030cd0294b3d6ac4495501b0a7874829b..45b7e9e58cfa8fba030bb4e3e949c063e1be4894 100644 (file)
@@ -218,9 +218,9 @@ public:
 
 private:
     int status = DAQ_SUCCESS;
-    float cpu_usage_30s = 0.0;
-    float cpu_usage_120s = 0.0;
-    float cpu_usage_300s = 0.0;
+    double cpu_usage_30s = 0.0;
+    double cpu_usage_120s = 0.0;
+    double cpu_usage_300s = 0.0;
     int instance_num = 0;
     std::mutex cpu_usage_mutex;
 };