Opentelemetry-specification: The name "IsRecordingEvents" misleading as it represent recording of any information, not just Events

Created on 31 May 2019  路  8Comments  路  Source: open-telemetry/opentelemetry-specification

The semantics of IsRecordingEvents is not only about recording events but also setting attributes.

Should it be called IsActive?

needs discussion

Most helpful comment

Active may be confusing especially with being active in the context. So I would suggest maybe IsRecording?

All 8 comments

Active may be confusing especially with being active in the context. So I would suggest maybe IsRecording?

I'm good with IsRecording

IsAlive, if not alive its dead, dead don't record, they walk though.

Perhaps we need to clarify semantics of this flag even further. For instance, will name be recorded on span? There may be vendors who need to get the span name and serialize it to the wire. Even when span wasn't recorded. Do we really want to not record attributes?

This feels low priority, but I would use the most concretely applicable term possible.
It's possible for an implementation that performs tail sampling in process to use a real span that may or may not be recorded. We might call this "IsNoOp" or "IsTraced".

I changed title to explain where the confusion can be from. IsRecordingEvents responsible for more than just events recording. So I'd suggest to change the name to IsRecording as a minimal first step. Happy to discuss further for alternative names.

I'm fine with IsRecording, though perhaps IsEnabled might avoid some confusion for cases like tail-based sampling, where you don't technically know if the span will be recorded or not.

IsRecording is used to record something even if it was sampled out. In case of tail based sampling I'd think sampled flag will be true anyway and will set recording to true automatically.

Was this page helpful?
0 / 5 - 0 ratings