uber / tchannel-go

Go implementation of a multiplexing and framing protocol for RPC calls
http://uber.github.io/tchannel/
MIT License
490 stars 84 forks source link

Add component tag to tracing spans #923

Closed ChenX1993 closed 1 month ago

ChenX1993 commented 2 months ago

This PR is making a minor change to add span component tag to tracing spans. According to the OpneTracing sematic conventions, the component tag indicates the library that created the spans. At Uber, It is quite useful for the tracing team to understand the span creation distribution among libraries in order to optimize the operational cost.

The software package, framework, library, or module that generated the associated Span. E.g., "grpc", "django", "JDBI".

cinchurge commented 1 month ago

how was this tested end-to-end?

ChenX1993 commented 1 month ago

how was this tested end-to-end?

If within the tchannel-go, there is already a tracing testing, and I updated the test with the new tag verification in this PR: https://github.com/uber/tchannel-go/blob/af146f5a54ac5787563a6857ed9b6ff26394f0ca/tracing_test.go#L60

If internally in monorepo, once I have the diff to bump the tchannel-go version, I will use our testing service to test end-to-end in staging env - checking the tag from jaeger UI.