From f0c3cd49a6292f7e9e30cc3e9c3d63a2d169548f Mon Sep 17 00:00:00 2001 From: Aravindan NC <35158113+AravindanNC@users.noreply.github.com> Date: Tue, 13 Jan 2026 16:20:31 -0500 Subject: [PATCH 1/7] Update CMakeLists.txt --- plugin/CMakeLists.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/plugin/CMakeLists.txt b/plugin/CMakeLists.txt index abfd9998..6a76ddaf 100644 --- a/plugin/CMakeLists.txt +++ b/plugin/CMakeLists.txt @@ -141,6 +141,9 @@ if (USE_RDK_LOGGER) target_link_libraries(${MODULE_IMPL_NAME} PRIVATE ${RDKLOGGER_LIBRARIES}) endif (USE_RDK_LOGGER) +# Link OpenTelemetry RDK wrapper library +target_link_libraries(${MODULE_IMPL_NAME} PRIVATE rdk_otlp) + install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/${STORAGE_DIRECTORY}/plugins) install(TARGETS ${MODULE_IMPL_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/${STORAGE_DIRECTORY}/plugins) From afcd7f1e20a27082c70bd8eba3d37a69d140f89f Mon Sep 17 00:00:00 2001 From: Aravindan NC <35158113+AravindanNC@users.noreply.github.com> Date: Tue, 13 Jan 2026 16:20:56 -0500 Subject: [PATCH 2/7] Update CMakeLists.txt --- legacy/CMakeLists.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/legacy/CMakeLists.txt b/legacy/CMakeLists.txt index e3b11dd7..7d91509f 100644 --- a/legacy/CMakeLists.txt +++ b/legacy/CMakeLists.txt @@ -70,6 +70,9 @@ if (USE_RDK_LOGGER) target_link_libraries(${PLUGIN_LEGACY_WIFI} PRIVATE ${RDKLOGGER_LIBRARIES}) endif (USE_RDK_LOGGER) +# Link OpenTelemetry RDK wrapper library +target_link_libraries(${PLUGIN_LEGACY_WIFI} PRIVATE rdk_otlp) + set_target_properties(${PLUGIN_LEGACY_WIFI} PROPERTIES CXX_STANDARD 11 CXX_STANDARD_REQUIRED YES) From f0c02035b72918efaed08d651ae4d2ca5b183615 Mon Sep 17 00:00:00 2001 From: Aravindan NC <35158113+AravindanNC@users.noreply.github.com> Date: Wed, 14 Jan 2026 10:24:26 -0500 Subject: [PATCH 3/7] Update LegacyWiFiManagerAPIs.cpp --- legacy/LegacyWiFiManagerAPIs.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/legacy/LegacyWiFiManagerAPIs.cpp b/legacy/LegacyWiFiManagerAPIs.cpp index a075e43e..e8c4b57a 100644 --- a/legacy/LegacyWiFiManagerAPIs.cpp +++ b/legacy/LegacyWiFiManagerAPIs.cpp @@ -20,6 +20,7 @@ #include "LegacyWiFiManagerAPIs.h" #include "NetworkManagerLogger.h" #include "NetworkManagerJsonEnum.h" +#include "rdk_otlp_instrumentation.h" using namespace std; using namespace WPEFramework::Plugin; @@ -133,6 +134,9 @@ namespace WPEFramework m_service->AddRef(); + // Initialize OpenTelemetry + rdk_otlp_init("WiFiManager", "1.0.0"); + string callsign(NETWORK_MANAGER_CALLSIGN); string token = ""; @@ -384,6 +388,12 @@ namespace WPEFramework uint32_t WiFiManager::getConnectedSSID (const JsonObject& parameters, JsonObject& response) { LOG_INPARAM(); + + // Start distributed trace (creates parent span and stores context) + NMLOG_ERROR("BEFORE OTLP DIST TRACE START"); + rdk_otlp_start_distributed_trace(WiFiManager.getConnectedSSID, "get"); + NMLOG_ERROR("AFTER OTLP DIST TRACE START"); + uint32_t rc = Core::ERROR_GENERAL; Exchange::INetworkManager::WiFiSSIDInfo ssidInfo{}; @@ -406,6 +416,9 @@ namespace WPEFramework response["signalStrength"] = ssidInfo.strength; response["frequency"] = ssidInfo.frequency; } + NMLOG_ERROR("BEFORE OTLP DIST TRACE END"); + rdk_otlp_finish_distributed_trace(); + NMLOG_ERROR("AFTER OTLP DIST TRACE END"); returnJson(rc); } From d28533f0a3d5a30a0399ce3f7db659ab4b247d09 Mon Sep 17 00:00:00 2001 From: Aravindan NC <35158113+AravindanNC@users.noreply.github.com> Date: Wed, 14 Jan 2026 13:51:22 -0500 Subject: [PATCH 4/7] Update LegacyWiFiManagerAPIs.cpp --- legacy/LegacyWiFiManagerAPIs.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/legacy/LegacyWiFiManagerAPIs.cpp b/legacy/LegacyWiFiManagerAPIs.cpp index e8c4b57a..83b8bce6 100644 --- a/legacy/LegacyWiFiManagerAPIs.cpp +++ b/legacy/LegacyWiFiManagerAPIs.cpp @@ -391,7 +391,7 @@ namespace WPEFramework // Start distributed trace (creates parent span and stores context) NMLOG_ERROR("BEFORE OTLP DIST TRACE START"); - rdk_otlp_start_distributed_trace(WiFiManager.getConnectedSSID, "get"); + rdk_otlp_start_distributed_trace("WiFiManager.getConnectedSSID", "get"); NMLOG_ERROR("AFTER OTLP DIST TRACE START"); uint32_t rc = Core::ERROR_GENERAL; From c0133b6f9efbd26eb4e48999e693563aad0954d0 Mon Sep 17 00:00:00 2001 From: Aravindan NC <35158113+AravindanNC@users.noreply.github.com> Date: Thu, 15 Jan 2026 09:09:21 -0500 Subject: [PATCH 5/7] Update NetworkManagerRDKProxy.cpp --- plugin/rdk/NetworkManagerRDKProxy.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/plugin/rdk/NetworkManagerRDKProxy.cpp b/plugin/rdk/NetworkManagerRDKProxy.cpp index 608d22d7..19e89348 100644 --- a/plugin/rdk/NetworkManagerRDKProxy.cpp +++ b/plugin/rdk/NetworkManagerRDKProxy.cpp @@ -20,6 +20,7 @@ #include "NetworkManagerConnectivity.h" #include "NetworkManagerRDKProxy.h" #include "libIBus.h" +#include "rdk_otlp_instrumentation.h" #include using namespace WPEFramework; @@ -1157,6 +1158,9 @@ const string CIDR_PREFIXES[CIDR_NETMASK_IP_LEN+1] = { uint32_t NetworkManagerImplementation::GetConnectedSSID(WiFiSSIDInfo& ssidInfo /* @out */) { LOG_ENTRY_FUNCTION(); + NMLOG_INFO ("Before OTLP Trace start"); + rdk_otlp_start_distributed_trace("ConnectedSSID", "get"); + NMLOG_INFO ("After OTLP Trace start"); uint32_t rc = Core::ERROR_RPC_CALL_FAILED; IARM_Result_t retVal = IARM_RESULT_SUCCESS; IARM_Bus_WiFiSrvMgr_Param_t param{}; @@ -1199,6 +1203,9 @@ const string CIDR_PREFIXES[CIDR_NETMASK_IP_LEN+1] = { { NMLOG_ERROR ("GetConnectedSSID failed"); } + NMLOG_INFO ("Before OTLP Trace end"); + rdk_otlp_finish_distributed_trace(); + NMLOG_INFO ("Before OTLP Trace end"); return rc; } From 70f7f9350c6fcc2beaea0460b39e44684b944b8a Mon Sep 17 00:00:00 2001 From: Aravindan NC <35158113+AravindanNC@users.noreply.github.com> Date: Thu, 15 Jan 2026 09:10:27 -0500 Subject: [PATCH 6/7] Update NetworkManager.cpp --- plugin/NetworkManager.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/plugin/NetworkManager.cpp b/plugin/NetworkManager.cpp index 1049e503..7ef6358e 100644 --- a/plugin/NetworkManager.cpp +++ b/plugin/NetworkManager.cpp @@ -18,6 +18,7 @@ **/ #include "NetworkManager.h" +#include "rdk_otlp_instrumentation.h" #include namespace WPEFramework @@ -67,6 +68,8 @@ namespace WPEFramework // Syslog Startup messages are always printed by default SYSLOG(Logging::Startup, (_T("Initializing NetworkManager"))); NetworkManagerLogger::Init(); + // Initialize OpenTelemetry + rdk_otlp_init("NetworkManager", "1.0.0"); // Register the Connection::Notification first. Do this before we start our actual plugin // in case something goes wrong or is disconnected - this way we know we're at least registered // for activate/deactivate events From a0e9d91ffc9851bab16b1cb83d258fc79614b6da Mon Sep 17 00:00:00 2001 From: Aravindan NC <35158113+AravindanNC@users.noreply.github.com> Date: Thu, 15 Jan 2026 09:37:40 -0500 Subject: [PATCH 7/7] Update CMakeLists.txt --- plugin/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/plugin/CMakeLists.txt b/plugin/CMakeLists.txt index 6a76ddaf..555f6c61 100644 --- a/plugin/CMakeLists.txt +++ b/plugin/CMakeLists.txt @@ -66,6 +66,7 @@ add_library(${MODULE_NAME} SHARED target_link_libraries(${MODULE_NAME} PRIVATE ${NAMESPACE}Core::${NAMESPACE}Core ${NAMESPACE}Plugins::${NAMESPACE}Plugins + rdk_otlp ) set_target_properties(${MODULE_NAME} PROPERTIES