From 022720db093ef985e5cae943d03ddaa7f20f9ceb Mon Sep 17 00:00:00 2001 From: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com> Date: Wed, 11 Mar 2026 11:06:17 +0000 Subject: [PATCH] Fix MetricsRegistry: add missing OpenLedger.h and Histogram::Record context arg MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Added missing #include for app.openLedger().current() calls in observable gauge callbacks. - Added opentelemetry::context::Context{} as third argument to Histogram::Record() calls — the initializer_list overload requires an explicit Context parameter in the installed OTel C++ SDK version. Co-Authored-By: Claude Opus 4.6 --- src/xrpld/telemetry/MetricsRegistry.cpp | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/src/xrpld/telemetry/MetricsRegistry.cpp b/src/xrpld/telemetry/MetricsRegistry.cpp index 25b9dcd6d3..5c07c57ac3 100644 --- a/src/xrpld/telemetry/MetricsRegistry.cpp +++ b/src/xrpld/telemetry/MetricsRegistry.cpp @@ -15,6 +15,7 @@ #include #include +#include #include #include @@ -22,6 +23,7 @@ #include #include +#include #include #include #include @@ -152,7 +154,9 @@ MetricsRegistry::recordRpcFinished(std::string_view method, std::int64_t duratio rpcFinishedCounter_->Add(1, {{"method", std::string(method)}}); if (rpcDurationHistogram_) rpcDurationHistogram_->Record( - static_cast(durationUs), {{"method", std::string(method)}}); + static_cast(durationUs), + {{"method", std::string(method)}}, + opentelemetry::context::Context{}); #else (void)method; (void)durationUs; @@ -168,7 +172,9 @@ MetricsRegistry::recordRpcErrored(std::string_view method, std::int64_t duration rpcErroredCounter_->Add(1, {{"method", std::string(method)}}); if (rpcDurationHistogram_) rpcDurationHistogram_->Record( - static_cast(durationUs), {{"method", std::string(method)}}); + static_cast(durationUs), + {{"method", std::string(method)}}, + opentelemetry::context::Context{}); #else (void)method; (void)durationUs; @@ -200,7 +206,9 @@ MetricsRegistry::recordJobStarted(std::string_view jobType, std::int64_t queuedD jobStartedCounter_->Add(1, {{"job_type", std::string(jobType)}}); if (jobQueuedDurationHistogram_) jobQueuedDurationHistogram_->Record( - static_cast(queuedDurUs), {{"job_type", std::string(jobType)}}); + static_cast(queuedDurUs), + {{"job_type", std::string(jobType)}}, + opentelemetry::context::Context{}); #else (void)jobType; (void)queuedDurUs; @@ -216,7 +224,9 @@ MetricsRegistry::recordJobFinished(std::string_view jobType, std::int64_t runnin jobFinishedCounter_->Add(1, {{"job_type", std::string(jobType)}}); if (jobRunningDurationHistogram_) jobRunningDurationHistogram_->Record( - static_cast(runningDurUs), {{"job_type", std::string(jobType)}}); + static_cast(runningDurUs), + {{"job_type", std::string(jobType)}}, + opentelemetry::context::Context{}); #else (void)jobType; (void)runningDurUs;