diff --git a/src/report_manager.cpp b/src/report_manager.cpp
index 3af033a..e9ccbb8 100644
--- a/src/report_manager.cpp
+++ b/src/report_manager.cpp
@@ -119,19 +119,7 @@
         throw errors::InvalidArgument("Interval");
     }
 
-    size_t metricCount = 0;
-    for (auto metricParam : readingParams)
-    {
-        auto metricParamsVec =
-            metricParam.at_label<utils::tstring::SensorPath>();
-        metricCount += metricParamsVec.size();
-    }
-
-    if (readingParams.size() > maxNumberMetrics ||
-        metricCount > maxNumberMetrics)
-    {
-        throw errors::InvalidArgument("MetricParams", "Too many.");
-    }
+    verifyMetricParams(readingParams);
 
     for (const LabeledMetricParameters& item : readingParams)
     {
@@ -237,3 +225,21 @@
         }
     }
 }
+
+void ReportManager::verifyMetricParams(
+    const std::vector<LabeledMetricParameters>& metricParams)
+{
+    size_t metricCount = 0;
+    for (const auto& metricParam : metricParams)
+    {
+        auto metricParamsVec =
+            metricParam.at_label<utils::tstring::SensorPath>();
+        metricCount += metricParamsVec.size();
+    }
+
+    if (metricParams.size() > ReportManager::maxNumberMetrics ||
+        metricCount > ReportManager::maxNumberMetrics)
+    {
+        throw errors::InvalidArgument("ReadingParameters", "Too many");
+    }
+}
