Add LogRecord observed timestamp field #5367
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The log data model differentiates between timestamp and observed timestamp.
Timestamp is the time at which the log occurred. Observed timestamp is the time at which the log was recorded in the collection system.
Timestamp is different than observed timestamp if the logs are being processed asynchronously. For example, maybe the logs are being read from a file, or are being processed on a different thread than where they occur. These will be very frequently the same for the SDK, but occasionally they will be different.
We could wait to add setters in the API until users request it, but we really should minimally be including getters on
LogRecordData
, and we really should populate the LogRecord#observed_time_unix_nano when serializing OTLP payloads.IMO, we might as well go all the way and add the API setters.