open-telemetry / opentelemetry-proto

OpenTelemetry protocol (OTLP) specification and Protobuf definitions
https://opentelemetry.io/docs/specs/otlp/
Apache License 2.0
545 stars 242 forks source link

Add TraceState to the LogRecord #522

Open bogdandrutu opened 5 months ago

tigrannajaryan commented 5 months ago

I am struggling to understand what is the meaning and purpose of the tracestate in a LogRecord. Can someone explain? What do the receivers of such LogRecord supposed to do with this data?

bogdandrutu commented 5 months ago

I am struggling to understand what is the meaning and purpose of the tracestate in a LogRecord. Can someone explain? What do the receivers of such LogRecord supposed to do with this data?

These are same reasons as why we propagate probability sampler here; TL;DR is that if you derive any metrics from these logs/events you can have a "weight" associated with that.

jmacd commented 5 months ago

Please add a description to this PR and refer to issues where this was discussed. I believe we had decided not to do this. Sampling SIG has discussed creating semantic conventions for encoding information we might usefully extract from tracestate to apply to log records, e.g., sampling.threshold, sampling.priority, and sampling.randomness.

bogdandrutu commented 5 months ago

Please add a description to this PR and refer to issues where this was discussed. I believe we had decided not to do this.

I don't have an issue, but if you have any prior discussion would be good to link as reference.

Sampling SIG has discussed creating semantic conventions for encoding information we might usefully extract from tracestate to apply to log records, e.g., sampling.threshold, sampling.priority, and sampling.randomness.

Would this scale for everything we like to put in tracestate (since I believe we may add more things into the tracestate)? What about other's tracestate (e.g. snwoflake's entry)?