-
Notifications
You must be signed in to change notification settings - Fork 276
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Clarify OTLP/JSON behavior when receiving unknown message fields (not enum fields) #425
Clarify OTLP/JSON behavior when receiving unknown message fields (not enum fields) #425
Comments
I believe that in the spirit of our interoperability approach we should go with option 2. This allows adding new fields in the future and such fields should be ignored by receivers who don't know about the new fields. Option 3 is a possible option for services that need to passthrough the data (such as Otel Collector). However, I do not think we need to make this part of the OTLP spec. It is a specialized application and does not need to be in the spec. |
Resolves open-telemetry/opentelemetry-proto#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages.
Resolves open-telemetry/opentelemetry-proto#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages.
Resolves open-telemetry/opentelemetry-proto#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages.
Resolves open-telemetry/opentelemetry-proto#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages.
Resolves open-telemetry/opentelemetry-proto#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages.
Resolves open-telemetry/opentelemetry-proto#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages.
Resolves open-telemetry/opentelemetry-proto#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages.
Resolves open-telemetry/opentelemetry-proto#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages.
…2816) * Clarify that unknown fields must be ignored when receiving OTLP/JSON Resolves open-telemetry/opentelemetry-proto#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages. * Remove unnecessary sentence * Fix typo Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
…(#2816) * Clarify that unknown fields must be ignored when receiving OTLP/JSON Resolves open-telemetry/opentelemetry-proto#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages. * Remove unnecessary sentence * Fix typo Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
…(#2816) * Clarify that unknown fields must be ignored when receiving OTLP/JSON Resolves open-telemetry#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages. * Remove unnecessary sentence * Fix typo Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
…(#2816) * Clarify that unknown fields must be ignored when receiving OTLP/JSON Resolves open-telemetry#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages. * Remove unnecessary sentence * Fix typo Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
…(#2816) * Clarify that unknown fields must be ignored when receiving OTLP/JSON Resolves #425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages. * Remove unnecessary sentence * Fix typo Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
…(#2816) * Clarify that unknown fields must be ignored when receiving OTLP/JSON Resolves open-telemetry/opentelemetry-proto#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages. * Remove unnecessary sentence * Fix typo Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
…(#2816) * Clarify that unknown fields must be ignored when receiving OTLP/JSON Resolves open-telemetry#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages. * Remove unnecessary sentence * Fix typo Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
…(#2816) * Clarify that unknown fields must be ignored when receiving OTLP/JSON Resolves open-telemetry#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages. * Remove unnecessary sentence * Fix typo Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
…(#2816) * Clarify that unknown fields must be ignored when receiving OTLP/JSON Resolves open-telemetry#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages. * Remove unnecessary sentence * Fix typo Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
…(#2816) * Clarify that unknown fields must be ignored when receiving OTLP/JSON Resolves open-telemetry#425 The proposed behavior is necessary for interoperability of senders and receivers when OTLP protocol evolves in an allowed way: by adding new fields to existing messages. * Remove unnecessary sentence * Fix typo Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
Usually protobuf tries to preserve the unknown fields, and works ok if we have otlp/proto (http/grpc) receiver -> otlp/proto (http/proto) exporter, aka passthrough mode. This works by keeping the bytes received untouched and put them back on the wire.
When converting between two different encodings OTLP/JSON to OTLP/Proto, or OTLP/Proto to Jaeger these fields cannot be converted.
Question is, what should we do when receiving unknown fields:
jsonpb
(JSON protobuf) decoder, probably too aggressive.The text was updated successfully, but these errors were encountered: