summaryrefslogtreecommitdiffstats
path: root/yt/cpp/mapreduce/http_client/raw_client.cpp
diff options
context:
space:
mode:
authormaybenotilya <[email protected]>2026-04-24 10:23:50 +0300
committermaybenotilya <[email protected]>2026-04-24 10:58:39 +0300
commit9def6761044f6a64646150e26fcbc1ae0d24d8f8 (patch)
treea733a8355ab0d1c7d1b02f00b8da9df693b05445 /yt/cpp/mapreduce/http_client/raw_client.cpp
parent55a42d4bc7fb22bae0e97d76e7043d43588044b6 (diff)
YT-27835: Client tracing
* Changelog entry Type: fix Component: cpp-sdk Create trace\_id on client side commit_hash:270019c138bed296ed934649a0b157f514fca0cb
Diffstat (limited to 'yt/cpp/mapreduce/http_client/raw_client.cpp')
-rw-r--r--yt/cpp/mapreduce/http_client/raw_client.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/yt/cpp/mapreduce/http_client/raw_client.cpp b/yt/cpp/mapreduce/http_client/raw_client.cpp
index 557e4afdbd4..bf63a7ae3bb 100644
--- a/yt/cpp/mapreduce/http_client/raw_client.cpp
+++ b/yt/cpp/mapreduce/http_client/raw_client.cpp
@@ -308,6 +308,11 @@ TTransactionId THttpRawClient::StartTransaction(
void THttpRawClient::PingTransaction(const TTransactionId& transactionId)
{
+ auto traceContext = Context_.Config->EnableClientTracing
+ ? NTracing::CreateTraceContextFromCurrent("ping_tx")
+ : nullptr;
+ NTracing::TCurrentTraceContextGuard traceContextGuard(traceContext);
+
std::call_once(PingClientInitOnceFlag_, [this] () {
InitPingClient();
});
@@ -332,6 +337,11 @@ void THttpRawClient::PingTransaction(const TTransactionId& transactionId)
headers->Add("Content-Encoding", "identity");
headers->Add("Accept-Encoding", "identity");
+ if (traceContext) {
+ auto traceparent = FormatTraceParentHeader(traceContext->GetTraceId(), traceContext->GetSpanId());
+ headers->Add("traceparent", traceparent);
+ }
+
TNode node;
node["transaction_id"] = GetGuidAsString(transactionId);
auto strParams = NodeToYsonString(node);