Merge branch 'pratik/otel-phase3-tx-tracing' into pratik/otel-phase4-consensus-tracing

This commit is contained in:
Pratik Mankawde
2026-07-08 15:20:07 +01:00
6 changed files with 12 additions and 6 deletions

View File

@@ -91,6 +91,7 @@
#include <atomic>
#include <chrono>
#include <cstdint>
#include <memory>
#include <string>
#include <string_view>

View File

@@ -46,7 +46,6 @@
#include <xrpl/proto/xrpl.pb.h>
#include <algorithm>
#include <ranges>
#include <string>
namespace xrpl::telemetry {

View File

@@ -6,6 +6,7 @@
#include <algorithm>
#include <cctype>
#include <ranges>
#include <string>
#include <string_view>
@@ -23,9 +24,8 @@ redactAccount(std::string_view addr)
// staying non-reversible — and lowercase them for a stable token.
auto const digest = sha512Half(Slice(addr.data(), addr.size()));
std::string token = to_string(digest).substr(0, 16);
std::transform(token.begin(), token.end(), token.begin(), [](unsigned char c) {
return static_cast<char>(std::tolower(c));
});
std::ranges::transform(
token, token.begin(), [](unsigned char c) { return static_cast<char>(std::tolower(c)); });
return token;
}

View File

@@ -280,7 +280,9 @@ public:
otlp_http::OtlpHttpExporterOptions exporterOpts;
exporterOpts.url = setup_.exporterEndpoint;
if (setup_.useTls)
{
exporterOpts.ssl_ca_cert_path = setup_.tlsCertPath;
}
auto exporter = otlp_http::OtlpHttpExporterFactory::Create(exporterOpts);
@@ -406,7 +408,9 @@ public:
getTracer(std::string_view name = kTracerName) override
{
if (!sdkProvider_)
{
return trace_api::Provider::GetTracerProvider()->GetTracer(std::string(name));
}
return sdkProvider_->GetTracer(std::string(name));
}
@@ -439,7 +443,9 @@ std::unique_ptr<Telemetry>
makeTelemetry(Telemetry::Setup const& setup, beast::Journal journal)
{
if (setup.enabled)
{
return std::make_unique<TelemetryImpl>(setup, journal);
}
return std::make_unique<NullTelemetryOtel>(setup);
}

View File

@@ -38,7 +38,6 @@
#include <xrpl/protocol/XRPAmount.h>
#include <xrpl/server/LoadFeeTrack.h>
#include <xrpl/telemetry/SpanGuard.h>
#include <xrpl/telemetry/SpanNames.h>
#include <xrpl/tx/ApplyContext.h>
#include <xrpl/tx/SignerEntries.h>
#include <xrpl/tx/apply.h>

View File

@@ -4,6 +4,7 @@
#include <algorithm>
#include <cctype>
#include <ranges>
#include <string>
using namespace xrpl;
@@ -28,7 +29,7 @@ TEST(Redaction, token_is_16_lowercase_hex_and_stable)
{
auto const token = redactAccount("rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh");
EXPECT_EQ(token.size(), 16u);
EXPECT_TRUE(std::all_of(token.begin(), token.end(), [](unsigned char c) {
EXPECT_TRUE(std::ranges::all_of(token, [](unsigned char c) {
return std::isdigit(c) || (c >= 'a' && c <= 'f');
}));
// Deterministic: hashing the same input twice yields the same token.