Go to the documentation of this file.
25 #include "opencensus/tags/context_util.h"
26 #include "opencensus/trace/context_util.h"
27 #include "opencensus/trace/propagation/grpc_trace_bin.h"
34 using ::opencensus::tags::TagMap;
36 using ::opencensus::trace::SpanContext;
43 SpanContext parent_ctx =
44 opencensus::trace::propagation::FromGrpcTraceBinHeader(tracing);
45 if (parent_ctx.IsValid()) {
56 ctxt->~CensusContext();
57 if (parent_ctxt !=
nullptr) {
58 SpanContext span_ctxt = parent_ctxt->
Context();
60 if (span_ctxt.IsValid()) {
65 const Span& span = opencensus::trace::GetCurrentSpan();
66 const TagMap&
tags = opencensus::tags::GetCurrentTagMap();
67 if (span.context().IsValid()) {
77 char* tracing_buf,
size_t tracing_buf_size) {
78 if (tracing_buf_size <
79 opencensus::trace::propagation::kGrpcTraceBinHeaderLen) {
82 opencensus::trace::propagation::ToGrpcTraceBinHeader(
84 return opencensus::trace::propagation::kGrpcTraceBinHeaderLen;
100 server_elapsed_time);
112 return reinterpret_cast<const CensusContext*
>(ctxt)->Context();
128 return "INVALID_ARGUMENT";
130 return "DEADLINE_EXCEEDED";
134 return "ALREADY_EXISTS";
136 return "PERMISSION_DENIED";
138 return "UNAUTHENTICATED";
140 return "RESOURCE_EXHAUSTED";
142 return "FAILED_PRECONDITION";
146 return "OUT_OF_RANGE";
148 return "UNIMPLEMENTED";
152 return "UNAVAILABLE";
158 return "UNKNOWN_STATUS";
struct census_context census_context
uint64_t GetOutgoingDataSize(const grpc_call_final_info *final_info)
@ GRPC_STATUS_UNAVAILABLE
@ GRPC_STATUS_UNAUTHENTICATED
@ GRPC_STATUS_PERMISSION_DENIED
grpc_transport_one_way_stats outgoing
@ GRPC_STATUS_DEADLINE_EXCEEDED
SpanContext SpanContextFromCensusContext(const census_context *ctxt)
@ GRPC_STATUS_INVALID_ARGUMENT
@ GRPC_STATUS_RESOURCE_EXHAUSTED
static size_t Encode(uint64_t time, char *buf, size_t buf_size)
static size_t Decode(absl::string_view buf, uint64_t *time)
size_t ServerStatsSerialize(uint64_t server_elapsed_time, char *buf, size_t buf_size)
::opencensus::trace::SpanContext Context() const
bool tags[kAvailableTags]
size_t ServerStatsDeserialize(const char *buf, size_t buf_size, uint64_t *server_elapsed_time)
grpc_transport_stream_stats transport_stream_stats
void GenerateServerContext(absl::string_view tracing, absl::string_view method, CensusContext *context)
size_t TraceContextSerialize(const ::opencensus::trace::SpanContext &context, char *tracing_buf, size_t tracing_buf_size)
unsigned __int64 uint64_t
Span SpanFromCensusContext(const census_context *ctxt)
void GenerateClientContext(absl::string_view method, CensusContext *ctxt, CensusContext *parent_ctxt)
absl::string_view StatusCodeToString(grpc_status_code code)
@ GRPC_STATUS_ALREADY_EXISTS
@ GRPC_STATUS_OUT_OF_RANGE
grpc_transport_one_way_stats incoming
uint64_t GetIncomingDataSize(const grpc_call_final_info *final_info)
@ GRPC_STATUS_UNIMPLEMENTED
@ GRPC_STATUS_FAILED_PRECONDITION
grpc::ClientContext context
size_t StatsContextSerialize(size_t, grpc_slice *)
const ::opencensus::trace::Span & Span() const
grpc
Author(s):
autogenerated on Thu Mar 13 2025 02:58:55