summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoreportnov <eportnov@ibs.ru>2022-08-03 09:55:25 +0300
committereportnov <eportnov@ibs.ru>2022-08-03 15:07:27 +0300
commit1a7f5d676e81e3aa118f6ba1182724a1d4799db4 (patch)
treee3c3410de0312e791b3889026e3b1ab604bebc1f
parent8f089bc45bc482314e656a1c26735a84f0809d9b (diff)
downloadopenbmc-telemetry/many_reports.tar.xz
Create many reportstelemetry/many_reports
-rw-r--r--meta-ibs/meta-cp2-5422/recipes-phosphor/interfaces/bmcweb/0006-clear-report.patch179
-rw-r--r--meta-ibs/meta-cp2-5422/recipes-phosphor/interfaces/bmcweb_%.bbappend1
-rw-r--r--meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/0004-add-hour-report.patch81
-rw-r--r--meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/30173616022
-rw-r--r--meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/30173616031
-rw-r--r--meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/30173616041
-rw-r--r--meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/30173616051
-rw-r--r--meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/30173616061
-rw-r--r--meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/30173616071
-rw-r--r--meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/30173616081
-rw-r--r--meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry_%.bbappend13
11 files changed, 281 insertions, 1 deletions
diff --git a/meta-ibs/meta-cp2-5422/recipes-phosphor/interfaces/bmcweb/0006-clear-report.patch b/meta-ibs/meta-cp2-5422/recipes-phosphor/interfaces/bmcweb/0006-clear-report.patch
new file mode 100644
index 0000000000..a8ae1d9331
--- /dev/null
+++ b/meta-ibs/meta-cp2-5422/recipes-phosphor/interfaces/bmcweb/0006-clear-report.patch
@@ -0,0 +1,179 @@
+From 012c8a2344433823a218f33f7e58ac1ab07f43dd Mon Sep 17 00:00:00 2001
+From: eportnov <eportnov@ibs.ru>
+Date: Wed, 3 Aug 2022 09:29:36 +0300
+Subject: [PATCH] clear report
+
+---
+ http/utility.hpp | 3 +-
+ .../include/event_service_manager.hpp | 2 +-
+ redfish-core/lib/metric_report.hpp | 88 ++++---------------
+ 3 files changed, 20 insertions(+), 73 deletions(-)
+
+diff --git a/http/utility.hpp b/http/utility.hpp
+index d6f31d07..ae236569 100644
+--- a/http/utility.hpp
++++ b/http/utility.hpp
+@@ -548,7 +548,8 @@ inline std::string getDateTime(boost::posix_time::milliseconds timeSinceEpoch)
+ boost::posix_time::ptime epoch(boost::gregorian::date(1970, 1, 1));
+ boost::posix_time::ptime time = epoch + timeSinceEpoch;
+ // append zero offset to the end according to the Redfish spec for Date-Time
+- return boost::posix_time::to_iso_extended_string(time) + "+00:00";
++ auto date_as_string = boost::posix_time::to_iso_extended_string(time);
++ return date_as_string.substr(0, date_as_string.find("."));
+ }
+ } // namespace details
+
+diff --git a/redfish-core/include/event_service_manager.hpp b/redfish-core/include/event_service_manager.hpp
+index aaa11724..0bce29f5 100644
+--- a/redfish-core/include/event_service_manager.hpp
++++ b/redfish-core/include/event_service_manager.hpp
+@@ -524,7 +524,7 @@ class Subscription : public persistent_data::UserSubscription
+ }
+
+ nlohmann::json msg;
+- if (!telemetry::fillReport(msg, reportId, var, "", ""))
++ if (!telemetry::fillReport(msg, reportId, var))
+ {
+ BMCWEB_LOG_ERROR << "Failed to fill the MetricReport for DBus "
+ "Report with id "
+diff --git a/redfish-core/lib/metric_report.hpp b/redfish-core/lib/metric_report.hpp
+index 234e9553..b804c396 100644
+--- a/redfish-core/lib/metric_report.hpp
++++ b/redfish-core/lib/metric_report.hpp
+@@ -36,82 +36,25 @@ using Readings =
+ std::vector<std::tuple<std::string, std::string, double, uint64_t>>;
+ using TimestampReadings = std::tuple<uint64_t, Readings>;
+
+-inline nlohmann::json PushAllMetrics(int hour_pos, const Readings& readings)
++inline nlohmann::json PushAllMetrics(const Readings& readings)
+ {
+ BMCWEB_LOG_DEBUG << "PushAllMetrics" << "\n";
+ nlohmann::json metricValues = nlohmann::json::array_t();
+- for(auto it = readings.begin() + hour_pos; it != readings.end(); ++it)
++ for(auto it = readings.begin(); it != readings.end(); ++it)
+ {
+ metricValues.push_back({
+- {"MetricId", std::get<0>(*it)},
+- {"MetricProperty", std::get<1>(*it)},
+- {"MetricValue", std::to_string(std::get<2>(*it))},
++ {"Sensor", std::get<1>(*it)},
++ {"Value", std::to_string(std::get<2>(*it))},
+ {"Timestamp", crow::utility::getDateTimeUintMs(std::get<3>(*it))},
+ });
+ }
+ return metricValues;
+ }
+
+-inline nlohmann::json PushOnIdMetrics(int hour_pos, const Readings& readings, const std::string& id_device)
++inline nlohmann::json toMetricValues(const Readings& readings)
+ {
+- BMCWEB_LOG_DEBUG << "PushOnIdMetrics" << "\n";
+- nlohmann::json metricValues = nlohmann::json::array_t();
+- for(auto it = readings.begin() + hour_pos; it != readings.end(); ++it)
+- {
+- if(std::get<0>(*it) == id_device)
+- {
+- metricValues.push_back({
+- {"MetricId", std::get<0>(*it)},
+- {"MetricProperty", std::get<1>(*it)},
+- {"MetricValue", std::to_string(std::get<2>(*it))},
+- {"Timestamp", crow::utility::getDateTimeUintMs(std::get<3>(*it))},
+- });
+- }
+- }
+- return metricValues;
+-}
+-
+-int GetPositionOnLastHour(const Readings& readings)
+-{
+- static constexpr int SECONDS_IN_HOUR = 3600;
+- static constexpr int DEFAULT_RESULT = 0;
+-
+- BMCWEB_LOG_DEBUG << "GetPositionOnLastHour" << "\n";
+- auto time_as_long = static_cast<uint64_t>(time(nullptr));
+- BMCWEB_LOG_DEBUG << "time_as_long - " << time_as_long << "\n";
+-
+- auto time_past_hour = (time_as_long - SECONDS_IN_HOUR) *1000;
+- BMCWEB_LOG_DEBUG << "time_past_hour - " << time_past_hour << "\n";
+-
+- for(auto it = readings.rbegin(); it !=readings.rend(); ++it)
+- {
+- auto reading_time = std::get<3>(*it);
+- BMCWEB_LOG_DEBUG << "reading_time - " << reading_time << "\n";
+- if(reading_time < time_past_hour)
+- {
+- BMCWEB_LOG_DEBUG << "result - " << abs(readings.rend() - it) << "\n";
+- return abs(readings.rend() - it);
+- }
+- }
+- return DEFAULT_RESULT;
+-}
+-
+-inline nlohmann::json toMetricValues(const Readings& readings, const std::string& id_device, Periods period)
+-{
+- int hour_pos = 0;
+- if(period == Periods::LastHour)
+- {
+- BMCWEB_LOG_DEBUG << "Period LastHour" << "\n";
+- hour_pos = GetPositionOnLastHour(readings);
+- BMCWEB_LOG_DEBUG << "hour_pos = " << hour_pos << "\n";
+- }
+- if(id_device.empty())
+- {
+- BMCWEB_LOG_DEBUG << "No id device" << "\n";
+- return PushAllMetrics(hour_pos, readings);
+- }
+- BMCWEB_LOG_DEBUG << "id_device = " << id_device << "\n";
+- return PushOnIdMetrics(hour_pos, readings, id_device);
++ BMCWEB_LOG_DEBUG << "No id device" << "\n";
++ return PushAllMetrics(readings);
+ }
+
+ inline telemetry::Periods ConvertPeriod(std::string const& period_as_string)
+@@ -128,9 +71,7 @@ inline telemetry::Periods ConvertPeriod(std::string const& period_as_string)
+ }
+
+ inline bool fillReport(nlohmann::json& json, const std::string& id,
+- const TimestampReadings& timestampReadings,
+- const std::string& id_device,
+- const std::string& period)
++ const TimestampReadings& timestampReadings)
+ {
+ json["@odata.type"] = "#MetricReport.v1_3_0.MetricReport";
+ json["@odata.id"] =
+@@ -146,7 +87,7 @@ inline bool fillReport(nlohmann::json& json, const std::string& id,
+
+ const auto& [timestamp, readings] = timestampReadings;
+ json["Timestamp"] = crow::utility::getDateTimeUintMs(timestamp);
+- json["MetricValues"] = toMetricValues(readings, id_device, ConvertPeriod(period));
++ json["MetricValues"] = toMetricValues(readings);
+ return true;
+ }
+ } // namespace telemetry
+@@ -269,7 +210,12 @@ inline void requestRoutesMetricReport(App& app)
+ BMCWEB_LOG_DEBUG << "device_id " << device_id << "\n";
+ BMCWEB_LOG_DEBUG << "period " << period << "\n";
+ BMCWEB_LOG_DEBUG << "reportPath - " << reportPath << "\n";
+-
++ bool is_need_last_hour = false;
++ auto converted_period = telemetry::ConvertPeriod(period);
++ if(converted_period == telemetry::Periods::LastHour)
++ {
++ is_need_last_hour = true;
++ }
+ crow::connections::systemBus->async_method_call([asyncResp, report_name, device_id, period](const boost::system::error_code& error_code,
+ const telemetry::TimestampReadings& ret){
+ if(error_code.value() == EBADR ||
+@@ -285,10 +231,10 @@ inline void requestRoutesMetricReport(App& app)
+ return;
+ }
+
+- telemetry::fillReport(asyncResp->res.jsonValue,report_name, ret, device_id, period);
++ telemetry::fillReport(asyncResp->res.jsonValue,report_name, ret);
+ },
+ telemetry::service, reportPath, telemetry::reportInterface,
+- "GetReadings");
++ "GetReadings", is_need_last_hour);
+ });
+ }
+ } // namespace redfish
diff --git a/meta-ibs/meta-cp2-5422/recipes-phosphor/interfaces/bmcweb_%.bbappend b/meta-ibs/meta-cp2-5422/recipes-phosphor/interfaces/bmcweb_%.bbappend
index 1bf2cfd6ba..9fa1a047f6 100644
--- a/meta-ibs/meta-cp2-5422/recipes-phosphor/interfaces/bmcweb_%.bbappend
+++ b/meta-ibs/meta-cp2-5422/recipes-phosphor/interfaces/bmcweb_%.bbappend
@@ -6,6 +6,7 @@ SRC_URI += "\
file://0003-add-new-dimm-fields.patch \
file://0004-add-hour-report.patch \
file://0005-convert-readings-to-method.patch \
+ file://0006-clear-report.patch \
"
EXTRA_OEMESON += "\
diff --git a/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/0004-add-hour-report.patch b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/0004-add-hour-report.patch
new file mode 100644
index 0000000000..404a14de65
--- /dev/null
+++ b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/0004-add-hour-report.patch
@@ -0,0 +1,81 @@
+From 3c0d4f99505a084c485ae9d047d641ea7049ca3d Mon Sep 17 00:00:00 2001
+From: eportnov <eportnov@ibs.ru>
+Date: Wed, 3 Aug 2022 09:26:41 +0300
+Subject: [PATCH] add hour report
+
+---
+ src/report.cpp | 40 +++++++++++++++++++++++++++++++++++++++-
+ src/report.hpp | 2 ++
+ 2 files changed, 41 insertions(+), 1 deletion(-)
+
+diff --git a/src/report.cpp b/src/report.cpp
+index dda3d8e..96e1b0a 100644
+--- a/src/report.cpp
++++ b/src/report.cpp
+@@ -375,7 +375,11 @@ std::unique_ptr<sdbusplus::asio::dbus_interface>
+ updateReadings();
+ }
+ });
+- dbusIface->register_method("GetReadings", [this] {
++ dbusIface->register_method("GetReadings", [this](bool is_need_last_hour) {
++ if(is_need_last_hour)
++ {
++ return getHourReadings();
++ }
+ return readings;
+ });
+ constexpr bool skipPropertiesChangedSignal = true;
+@@ -383,6 +387,40 @@ std::unique_ptr<sdbusplus::asio::dbus_interface>
+ return dbusIface;
+ }
+
++Readings Report::getHourReadings()
++{
++ Readings result;
++ std::get<0>(result) = std::get<0>(readings);
++ auto& result_read = std::get<1>(result);;
++
++ auto& read = std::get<1>(readings);
++ auto hour_pos = GetPositionOnLastHour(read);
++
++ std::copy(read.begin() + hour_pos, read.end(), std::back_inserter(result_read));
++
++ return result;
++}
++
++int Report::GetPositionOnLastHour(const std::vector<ReadingData>& readings)
++{
++ static constexpr int MILI_SECONDS_IN_HOUR = 1000*60*60;
++ static constexpr int DEFAULT_RESULT = 0;
++
++ uint64_t time_past_hour = std::chrono::duration_cast<std::chrono::milliseconds>(
++ std::chrono::system_clock::now().time_since_epoch()).count() - MILI_SECONDS_IN_HOUR;
++
++
++ for(auto it = readings.rbegin(); it !=readings.rend(); ++it)
++ {
++ auto reading_time = std::get<3>(*it);
++ if(reading_time < time_past_hour)
++ {
++ return abs(readings.rend() - it);
++ }
++ }
++ return DEFAULT_RESULT;
++}
++
+ void Report::timerProcForPeriodicReport(boost::system::error_code ec,
+ Report& self)
+ {
+diff --git a/src/report.hpp b/src/report.hpp
+index 8d71bc9..bd707af 100644
+--- a/src/report.hpp
++++ b/src/report.hpp
+@@ -105,6 +105,8 @@ class Report : public interfaces::Report, public interfaces::MetricListener
+ bool shouldStoreMetricValues() const;
+ void updateReadings();
+ void updateReportingType(ReportingType);
++ Readings getHourReadings();
++ int GetPositionOnLastHour(const std::vector<ReadingData>& readings);
+
+ std::string id;
+ std::string name;
diff --git a/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361602 b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361602
index 9287fa6062..4796f8a90a 100644
--- a/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361602
+++ b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361602
@@ -1 +1 @@
-{"AppendLimit":380160,"Enabled":true,"Id":"hour_data","Interval":10000,"Name":"report_name","ReadingParameters":[{"collectionDuration":2,"collectionTimeScope":0,"id":"cpu_voltage","operationType":2,"sensorPath":[{"metadata":"PVCCIN_CPU1","path":"/xyz/openbmc_project/sensors/voltage/PVCCIN_CPU1","service":"xyz.openbmc_project.ADCSensor"},{"metadata":"PVCCIN_CPU2","path":"/xyz/openbmc_project/sensors/voltage/PVCCIN_CPU2","service":"xyz.openbmc_project.ADCSensor"}]},{"collectionDuration":10,"collectionTimeScope":0,"id":"fans","operationType":2,"sensorPath":[{"metadata":"CPU1_Fan","path":"/xyz/openbmc_project/sensors/fan_tach/CPU1_Fan","service":"xyz.openbmc_project.FanSensor"},{"metadata":"CPU2_Fan","path":"/xyz/openbmc_project/sensors/fan_tach/CPU2_Fan","service":"xyz.openbmc_project.FanSensor"},{"metadata":"System_Fan_1","path":"/xyz/openbmc_project/sensors/fan_tach/System_Fan_1","service":"xyz.openbmc_project.FanSensor"},{"metadata":"System_Fan_2","path":"/xyz/openbmc_project/sensors/fan_tach/System_Fan_2","service":"xyz.openbmc_project.FanSensor"},{"metadata":"System_Fan_3","path":"/xyz/openbmc_project/sensors/fan_tach/System_Fan_3","service":"xyz.openbmc_project.FanSensor"},{"metadata":"Pwm_1","path":"/xyz/openbmc_project/sensors/fan_pwm/Pwm_1","service":"xyz.openbmc_project.FanSensor"},{"metadata":"Pwm_5","path":"/xyz/openbmc_project/sensors/fan_pwm/Pwm_5","service":"xyz.openbmc_project.FanSensor"},{"metadata":"Pwm_6","path":"/xyz/openbmc_project/sensors/fan_pwm/Pwm_6","service":"xyz.openbmc_project.FanSensor"},{"metadata":"Pwm_7","path":"/xyz/openbmc_project/sensors/fan_pwm/Pwm_7","service":"xyz.openbmc_project.FanSensor"},{"metadata":"Pwm_8","path":"/xyz/openbmc_project/sensors/fan_pwm/Pwm_8","service":"xyz.openbmc_project.FanSensor"}]},{"collectionDuration":2,"collectionTimeScope":0,"id":"cpu_temp","operationType":2,"sensorPath":[{"metadata":"Die_CPU1","path":"/xyz/openbmc_project/sensors/temperature/Die_CPU1","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"Die_CPU2","path":"/xyz/openbmc_project/sensors/temperature/Die_CPU2","service":"xyz.openbmc_project.CPUSensor"}]},{"collectionDuration":8,"collectionTimeScope":0,"id":"dimm_temp","operationType":2,"sensorPath":[{"metadata":"DIMM_A1_CPU1","path":"/xyz/openbmc_project/sensors/temperature/DIMM_A1_CPU1","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DIMM_A1_CPU2","path":"/xyz/openbmc_project/sensors/temperature/DIMM_A1_CPU2","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DIMM_B1_CPU1","path":"/xyz/openbmc_project/sensors/temperature/DIMM_B1_CPU1","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DIMM_B1_CPU2","path":"/xyz/openbmc_project/sensors/temperature/DIMM_B1_CPU2","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DIMM_D1_CPU1","path":"/xyz/openbmc_project/sensors/temperature/DIMM_D1_CPU1","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DIMM_D1_CPU2","path":"/xyz/openbmc_project/sensors/temperature/DIMM_D1_CPU2","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DIMM_E1_CPU1","path":"/xyz/openbmc_project/sensors/temperature/DIMM_E1_CPU1","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DIMM_E1_CPU2","path":"/xyz/openbmc_project/sensors/temperature/DIMM_E1_CPU2","service":"xyz.openbmc_project.CPUSensor"}]},{"collectionDuration":6,"collectionTimeScope":0,"id":"other_temp","operationType":2,"sensorPath":[{"metadata":"DTS_CPU1","path":"/xyz/openbmc_project/sensors/temperature/DTS_CPU1","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DTS_CPU2","path":"/xyz/openbmc_project/sensors/temperature/DTS_CPU2","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"Inlet_BRD_Temp","path":"/xyz/openbmc_project/sensors/temperature/Inlet_BRD_Temp","service":"xyz.openbmc_project.HwmonTempSensor"},{"metadata":"PCH___M_2_Temp","path":"/xyz/openbmc_project/sensors/temperature/PCH___M_2_Temp","service":"xyz.openbmc_project.HwmonTempSensor"},{"metadata":"Right_side_of_the_board_Temp","path":"/xyz/openbmc_project/sensors/temperature/Right_side_of_the_board_Temp","service":"xyz.openbmc_project.HwmonTempSensor"},{"metadata":"BMC_Temp","path":"/xyz/openbmc_project/sensors/temperature/BMC_Temp","service":"xyz.openbmc_project.HwmonTempSensor"}]},{"collectionDuration":2,"collectionTimeScope":0,"id":"power","operationType":2,"sensorPath":[{"metadata":"Cpu_Power_Average_CPU1","path":"/xyz/openbmc_project/sensors/power/Cpu_Power_Average_CPU1","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"Cpu_Power_Average_CPU2","path":"/xyz/openbmc_project/sensors/power/Cpu_Power_Average_CPU2","service":"xyz.openbmc_project.CPUSensor"}]},{"collectionDuration":14,"collectionTimeScope":0,"id":"psu","operationType":2,"sensorPath":[{"metadata":"PSU1_Input_Current","path":"/xyz/openbmc_project/sensors/current/PSU1_Input_Current","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU2_Input_Current","path":"/xyz/openbmc_project/sensors/current/PSU2_Input_Current","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU1_Output_Current","path":"/xyz/openbmc_project/sensors/current/PSU1_Output_Current","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU2_Output_Current","path":"/xyz/openbmc_project/sensors/current/PSU2_Output_Current","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU1_Input_Power","path":"/xyz/openbmc_project/sensors/power/PSU1_Input_Power","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU2_Input_Power","path":"/xyz/openbmc_project/sensors/power/PSU2_Input_Power","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU1_Output_Power","path":"/xyz/openbmc_project/sensors/power/PSU1_Output_Power","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU2_Output_Power","path":"/xyz/openbmc_project/sensors/power/PSU2_Output_Power","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU1_Temperature","path":"/xyz/openbmc_project/sensors/temperature/PSU1_Temperature","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU2_Temperature","path":"/xyz/openbmc_project/sensors/temperature/PSU2_Temperature","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU1_Input_Voltage","path":"/xyz/openbmc_project/sensors/voltage/PSU1_Input_Voltage","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU2_Input_Voltage","path":"/xyz/openbmc_project/sensors/voltage/PSU2_Input_Voltage","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU1_Output_Voltage","path":"/xyz/openbmc_project/sensors/voltage/PSU1_Output_Voltage","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU2_Output_Voltage","path":"/xyz/openbmc_project/sensors/voltage/PSU2_Output_Voltage","service":"xyz.openbmc_project.PSUSensor"}]}],"ReportActions":[1],"ReportUpdates":2,"ReportingType":0,"Version":6} \ No newline at end of file
+{"AppendLimit":17280,"Enabled":true,"Id":"cpu_voltage","Interval":10000,"Name":"cpu_voltage","ReadingParameters":[{"collectionDuration":2,"collectionTimeScope":0,"id":"cpu_voltage","operationType":2,"sensorPath":[{"metadata":"PVCCIN_CPU1","path":"/xyz/openbmc_project/sensors/voltage/PVCCIN_CPU1","service":"xyz.openbmc_project.ADCSensor"},{"metadata":"PVCCIN_CPU2","path":"/xyz/openbmc_project/sensors/voltage/PVCCIN_CPU2","service":"xyz.openbmc_project.ADCSensor"}]}],"ReportActions":[1],"ReportUpdates":2,"ReportingType":0,"Version":6}
diff --git a/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361603 b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361603
new file mode 100644
index 0000000000..f76e9079f1
--- /dev/null
+++ b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361603
@@ -0,0 +1 @@
+{"AppendLimit":86400,"Enabled":true,"Id":"fans","Interval":10000,"Name":"fans","ReadingParameters":[{"collectionDuration":10,"collectionTimeScope":0,"id":"fans","operationType":2,"sensorPath":[{"metadata":"CPU1_Fan","path":"/xyz/openbmc_project/sensors/fan_tach/CPU1_Fan","service":"xyz.openbmc_project.FanSensor"},{"metadata":"CPU2_Fan","path":"/xyz/openbmc_project/sensors/fan_tach/CPU2_Fan","service":"xyz.openbmc_project.FanSensor"},{"metadata":"System_Fan_1","path":"/xyz/openbmc_project/sensors/fan_tach/System_Fan_1","service":"xyz.openbmc_project.FanSensor"},{"metadata":"System_Fan_2","path":"/xyz/openbmc_project/sensors/fan_tach/System_Fan_2","service":"xyz.openbmc_project.FanSensor"},{"metadata":"System_Fan_3","path":"/xyz/openbmc_project/sensors/fan_tach/System_Fan_3","service":"xyz.openbmc_project.FanSensor"},{"metadata":"Pwm_1","path":"/xyz/openbmc_project/sensors/fan_pwm/Pwm_1","service":"xyz.openbmc_project.FanSensor"},{"metadata":"Pwm_5","path":"/xyz/openbmc_project/sensors/fan_pwm/Pwm_5","service":"xyz.openbmc_project.FanSensor"},{"metadata":"Pwm_6","path":"/xyz/openbmc_project/sensors/fan_pwm/Pwm_6","service":"xyz.openbmc_project.FanSensor"},{"metadata":"Pwm_7","path":"/xyz/openbmc_project/sensors/fan_pwm/Pwm_7","service":"xyz.openbmc_project.FanSensor"},{"metadata":"Pwm_8","path":"/xyz/openbmc_project/sensors/fan_pwm/Pwm_8","service":"xyz.openbmc_project.FanSensor"}]}],"ReportActions":[1],"ReportUpdates":2,"ReportingType":0,"Version":6}
diff --git a/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361604 b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361604
new file mode 100644
index 0000000000..a5a3feec3c
--- /dev/null
+++ b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361604
@@ -0,0 +1 @@
+{"AppendLimit":17280,"Enabled":true,"Id":"cpu_temp","Interval":10000,"Name":"cpu_temp","ReadingParameters":[{"collectionDuration":2,"collectionTimeScope":0,"id":"cpu_temp","operationType":2,"sensorPath":[{"metadata":"Die_CPU1","path":"/xyz/openbmc_project/sensors/temperature/Die_CPU1","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"Die_CPU2","path":"/xyz/openbmc_project/sensors/temperature/Die_CPU2","service":"xyz.openbmc_project.CPUSensor"}]}],"ReportActions":[1],"ReportUpdates":2,"ReportingType":0,"Version":6}
diff --git a/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361605 b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361605
new file mode 100644
index 0000000000..d9226bd9d3
--- /dev/null
+++ b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361605
@@ -0,0 +1 @@
+{"AppendLimit":69120,"Enabled":true,"Id":"dimm_temp","Interval":10000,"Name":"dimm_temp","ReadingParameters":[{"collectionDuration":8,"collectionTimeScope":0,"id":"dimm_temp","operationType":2,"sensorPath":[{"metadata":"DIMM_A1_CPU1","path":"/xyz/openbmc_project/sensors/temperature/DIMM_A1_CPU1","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DIMM_A1_CPU2","path":"/xyz/openbmc_project/sensors/temperature/DIMM_A1_CPU2","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DIMM_B1_CPU1","path":"/xyz/openbmc_project/sensors/temperature/DIMM_B1_CPU1","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DIMM_B1_CPU2","path":"/xyz/openbmc_project/sensors/temperature/DIMM_B1_CPU2","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DIMM_D1_CPU1","path":"/xyz/openbmc_project/sensors/temperature/DIMM_D1_CPU1","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DIMM_D1_CPU2","path":"/xyz/openbmc_project/sensors/temperature/DIMM_D1_CPU2","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DIMM_E1_CPU1","path":"/xyz/openbmc_project/sensors/temperature/DIMM_E1_CPU1","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DIMM_E1_CPU2","path":"/xyz/openbmc_project/sensors/temperature/DIMM_E1_CPU2","service":"xyz.openbmc_project.CPUSensor"}]}],"ReportActions":[1],"ReportUpdates":2,"ReportingType":0,"Version":6}
diff --git a/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361606 b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361606
new file mode 100644
index 0000000000..356226a0bf
--- /dev/null
+++ b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361606
@@ -0,0 +1 @@
+{"AppendLimit":51840,"Enabled":true,"Id":"other_temp","Interval":10000,"Name":"other_temp","ReadingParameters":[{"collectionDuration":6,"collectionTimeScope":0,"id":"other_temp","operationType":2,"sensorPath":[{"metadata":"DTS_CPU1","path":"/xyz/openbmc_project/sensors/temperature/DTS_CPU1","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"DTS_CPU2","path":"/xyz/openbmc_project/sensors/temperature/DTS_CPU2","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"Inlet_BRD_Temp","path":"/xyz/openbmc_project/sensors/temperature/Inlet_BRD_Temp","service":"xyz.openbmc_project.HwmonTempSensor"},{"metadata":"PCH___M_2_Temp","path":"/xyz/openbmc_project/sensors/temperature/PCH___M_2_Temp","service":"xyz.openbmc_project.HwmonTempSensor"},{"metadata":"Right_side_of_the_board_Temp","path":"/xyz/openbmc_project/sensors/temperature/Right_side_of_the_board_Temp","service":"xyz.openbmc_project.HwmonTempSensor"},{"metadata":"BMC_Temp","path":"/xyz/openbmc_project/sensors/temperature/BMC_Temp","service":"xyz.openbmc_project.HwmonTempSensor"}]}],"ReportActions":[1],"ReportUpdates":2,"ReportingType":0,"Version":6}
diff --git a/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361607 b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361607
new file mode 100644
index 0000000000..b3410cb10a
--- /dev/null
+++ b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361607
@@ -0,0 +1 @@
+{"AppendLimit":17280,"Enabled":true,"Id":"power","Interval":10000,"Name":"power","ReadingParameters":[{"collectionDuration":2,"collectionTimeScope":0,"id":"power","operationType":2,"sensorPath":[{"metadata":"Cpu_Power_Average_CPU1","path":"/xyz/openbmc_project/sensors/power/Cpu_Power_Average_CPU1","service":"xyz.openbmc_project.CPUSensor"},{"metadata":"Cpu_Power_Average_CPU2","path":"/xyz/openbmc_project/sensors/power/Cpu_Power_Average_CPU2","service":"xyz.openbmc_project.CPUSensor"}]}],"ReportActions":[1],"ReportUpdates":2,"ReportingType":0,"Version":6}
diff --git a/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361608 b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361608
new file mode 100644
index 0000000000..52afef8b48
--- /dev/null
+++ b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry/3017361608
@@ -0,0 +1 @@
+{"AppendLimit":120960,"Enabled":true,"Id":"psu","Interval":10000,"Name":"psu","ReadingParameters":[{"collectionDuration":14,"collectionTimeScope":0,"id":"psu","operationType":2,"sensorPath":[{"metadata":"PSU1_Input_Current","path":"/xyz/openbmc_project/sensors/current/PSU1_Input_Current","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU2_Input_Current","path":"/xyz/openbmc_project/sensors/current/PSU2_Input_Current","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU1_Output_Current","path":"/xyz/openbmc_project/sensors/current/PSU1_Output_Current","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU2_Output_Current","path":"/xyz/openbmc_project/sensors/current/PSU2_Output_Current","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU1_Input_Power","path":"/xyz/openbmc_project/sensors/power/PSU1_Input_Power","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU2_Input_Power","path":"/xyz/openbmc_project/sensors/power/PSU2_Input_Power","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU1_Output_Power","path":"/xyz/openbmc_project/sensors/power/PSU1_Output_Power","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU2_Output_Power","path":"/xyz/openbmc_project/sensors/power/PSU2_Output_Power","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU1_Temperature","path":"/xyz/openbmc_project/sensors/temperature/PSU1_Temperature","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU2_Temperature","path":"/xyz/openbmc_project/sensors/temperature/PSU2_Temperature","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU1_Input_Voltage","path":"/xyz/openbmc_project/sensors/voltage/PSU1_Input_Voltage","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU2_Input_Voltage","path":"/xyz/openbmc_project/sensors/voltage/PSU2_Input_Voltage","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU1_Output_Voltage","path":"/xyz/openbmc_project/sensors/voltage/PSU1_Output_Voltage","service":"xyz.openbmc_project.PSUSensor"},{"metadata":"PSU2_Output_Voltage","path":"/xyz/openbmc_project/sensors/voltage/PSU2_Output_Voltage","service":"xyz.openbmc_project.PSUSensor"}]}],"ReportActions":[1],"ReportUpdates":2,"ReportingType":0,"Version":6}
diff --git a/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry_%.bbappend b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry_%.bbappend
index 74c60be7f9..f137f49b9e 100644
--- a/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry_%.bbappend
+++ b/meta-ibs/meta-cp2-5422/recipes-phosphor/telemetry/telemetry_%.bbappend
@@ -1,10 +1,23 @@
FILESEXTRAPATHS:append := "${THISDIR}/${PN}:"
SRC_URI += "file://3017361602 \
+ file://3017361603 \
+ file://3017361604 \
+ file://3017361605 \
+ file://3017361606 \
+ file://3017361607 \
+ file://3017361608 \
file://0001-set_new_report_path.patch \
file://0002-increase-size-of-report.patch \
file://0003-convert-readings-to-method.patch \
+ file://0004-add-hour-report.patch \
"
do_install:append() {
install -d ${D}/var/lib/telemetry/Reports
cp ${WORKDIR}/3017361602 ${D}/var/lib/telemetry/Reports
+ cp ${WORKDIR}/3017361603 ${D}/var/lib/telemetry/Reports
+ cp ${WORKDIR}/3017361604 ${D}/var/lib/telemetry/Reports
+ cp ${WORKDIR}/3017361605 ${D}/var/lib/telemetry/Reports
+ cp ${WORKDIR}/3017361606 ${D}/var/lib/telemetry/Reports
+ cp ${WORKDIR}/3017361607 ${D}/var/lib/telemetry/Reports
+ cp ${WORKDIR}/3017361608 ${D}/var/lib/telemetry/Reports
}