You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, the "delivery_info" attribute in celery is a string and not a map (or even a json).
The attribute is transformed into a string, which makes it hard to parse, and one has to use regex instead.
Describe your environment
OS: (e.g, Ubuntu)
Python version: (e.g., Python 3.8.10)
Package version: (e.g., 0.46.0)
What happened?
Currently, the "delivery_info" attribute in celery is a string and not a map (or even a json).
The attribute is transformed into a string, which makes it hard to parse, and one has to use regex instead.
Steps to Reproduce
Run the celery instrumentation application from https://github.com/shivanshuraj1333/celery-opentelemetry-instrumentation/
Expected Result
attribute name: celetry.delivery_info
option 1: return a python dict
option 2: return a valid json
A dict is supported by semconv and proto message https://github.com/open-telemetry/opentelemetry-proto/blob/main/opentelemetry/proto/common/v1/common.proto#L37
Also, the unmarshalling is already supported, see.
So, let's go for having option 1 makes sense, since, it helps in extracting the keys from map values of an attribute
Actual Result
attribute name:
celetry.delivery_info
value:
{'exchange': '', 'routing_key': 'queue2', 'priority': 0, 'redelivered': False}
Additional context
No response
Would you like to implement a fix?
None
The text was updated successfully, but these errors were encountered: