Skip to content

Commit 4d7dc0b

Browse files
authored
KIKIMR-20533 Forward traceparent header to KV-tablet (#689)
* KIKIMR-20533 Forward traceparent header to KV-tablet * Introduced TWilsonGrpc::RequestActor
1 parent 6709bae commit 4d7dc0b

File tree

3 files changed

+11
-4
lines changed

3 files changed

+11
-4
lines changed

ydb/core/grpc_services/rpc_deferrable.h

+8-2
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,12 @@
66
#include "cancelation/cancelation_event.h"
77
#include "rpc_common/rpc_common.h"
88

9-
#include <ydb/core/tx/tx_proxy/proxy.h>
10-
#include <ydb/library/ydb_issue/issue_helpers.h>
119
#include <ydb/core/base/tablet_pipe.h>
1210
#include <ydb/core/protos/flat_tx_scheme.pb.h>
1311
#include <ydb/core/tx/schemeshard/schemeshard.h>
12+
#include <ydb/core/tx/tx_proxy/proxy.h>
13+
#include <ydb/library/wilson_ids/wilson.h>
14+
#include <ydb/library/ydb_issue/issue_helpers.h>
1415
#include <ydb/public/api/protos/ydb_status_codes.pb.h>
1516
#include <ydb/public/lib/operation_id/operation_id.h>
1617

@@ -150,6 +151,8 @@ class TRpcOperationRequestActor : public TRpcRequestWithOperationParamsActor<TDe
150151

151152
TRpcOperationRequestActor(IRequestOpCtx* request)
152153
: TBase(request)
154+
, Span_(TWilsonGrpc::RequestActor, request->GetWilsonTraceId(),
155+
"RequestProxy.RpcOperationRequestActor", NWilson::EFlags::AUTO_END)
153156
{}
154157

155158
static constexpr NKikimrServices::TActivity::EType ActorActivityType() {
@@ -280,6 +283,9 @@ class TRpcOperationRequestActor : public TRpcRequestWithOperationParamsActor<TDe
280283
auto as = TActivationContext::ActorSystem();
281284
PassSubscription(ev->Get(), Request_.get(), as);
282285
}
286+
287+
protected:
288+
NWilson::TSpan Span_;
283289
};
284290

285291
} // namespace NGRpcService

ydb/core/grpc_services/rpc_keyvalue.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -513,7 +513,7 @@ class TBaseKeyValueRequest {
513513
req->UserToken = UserToken;
514514
req->DatabaseName = self->Request_->GetDatabaseName().GetOrElse("");
515515
auto ev = new TEvTxProxySchemeCache::TEvNavigateKeySet(req.Release());
516-
self->Send(MakeSchemeCacheID(), ev);
516+
self->Send(MakeSchemeCacheID(), ev, 0, 0, self->Span_.GetTraceId());
517517
}
518518

519519
bool OnNavigateKeySetResult(TEvTxProxySchemeCache::TEvNavigateKeySetResult::TPtr &ev, ui32 access) {
@@ -818,7 +818,7 @@ class TKeyValueRequestGrpc
818818
auto &rec = *this->GetProtoRequest();
819819
CopyProtobuf(rec, &req->Record);
820820
req->Record.set_tablet_id(KVTabletId);
821-
NTabletPipe::SendData(this->SelfId(), KVPipeClient, req.release(), 0);
821+
NTabletPipe::SendData(this->SelfId(), KVPipeClient, req.release(), 0, TBase::Span_.GetTraceId());
822822
}
823823

824824
void Handle(typename TKVRequest::TResponse::TPtr &ev) {

ydb/library/wilson_ids/wilson.h

+1
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ namespace NKikimr {
4747
struct TWilsonGrpc {
4848
enum {
4949
RequestProxy = 9,
50+
RequestActor = 9,
5051
};
5152
};
5253

0 commit comments

Comments
 (0)