Skip to content
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

[ServiceBus/EventHub] add service specific message annotations to receiver logs #38090

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

swathipil
Copy link
Member

@swathipil swathipil commented Oct 24, 2024

Adding service specific annotations/other metadata on received messages to help with debugging. Sample log with addition:

Received message: annotations: {b'annotation_key': b'value', b'x-opt-enqueued-time': 1729809528059, b'x-opt-sequence-number': 6, b'x-opt-locked-until': 1729809828277}, header: Header(durable=None, priority=10, ttl=None, first_acquirer=None, delivery_count=0).

Larger snippet:

2024-10-24 16:04:40,829 | MainThread | DEBUG | azure.eventhub._pyamqp.receiver | <- TransferFrame(handle=2, delivery_id=1, delivery_tag=b'', message_format=0, settled=True, more=False, rcv_settle_mode=None, state=None, resume=None, aborted=None, batchable=True, payload=b'***')
2024-10-24 16:04:40,830 | MainThread | DEBUG | azure.eventhub._pyamqp.receiver | Received message: annotations: {b'x-opt-sequence-number-epoch': -1, b'x-opt-sequence-number': 0, b'x-opt-offset': b'0', b'x-opt-enqueued-time': 1729810601627}, header: None
2024-10-24 16:04:40,831 | MainThread | DEBUG | azure.eventhub._pyamqp.receiver | <- TransferFrame(handle=2, delivery_id=2, delivery_tag=b'', message_format=0, settled=True, more=False, rcv_settle_mode=None, state=None, resume=None, aborted=None, batchable=True, payload=b'***')
2024-10-24 16:04:40,831 | MainThread | DEBUG | azure.eventhub._pyamqp.receiver | Received message: annotations: {b'x-opt-sequence-number-epoch': -1, b'x-opt-sequence-number': 1, b'x-opt-offset': b'144', b'x-opt-enqueued-time': 1729810601721}, header: None
2024-10-24 16:04:40,832 | MainThread | DEBUG | azure.eventhub._pyamqp.receiver | <- TransferFrame(handle=2, delivery_id=3, delivery_tag=b'', message_format=0, settled=True, more=False, rcv_settle_mode=None, state=None, resume=None, aborted=None, batchable=True, payload=b'***')
2024-10-24 16:04:40,832 | MainThread | DEBUG | azure.eventhub._pyamqp.receiver | Received message: annotations: {b'annotation_key': b'value', b'x-opt-sequence-number-epoch': -1, b'x-opt-sequence-number': 2, b'x-opt-offset': b'320', b'x-opt-enqueued-time': 1729810601783}, header: None
2024-10-24 16:04:40,833 | MainThread | DEBUG | azure.eventhub._pyamqp.receiver | <- TransferFrame(handle=2, delivery_id=4, delivery_tag=b'', message_format=0, settled=True, more=False, rcv_settle_mode=None, state=None, resume=None, aborted=None, batchable=True, payload=b'***')
2024-10-24 16:04:40,833 | MainThread | DEBUG | azure.eventhub._pyamqp.receiver | Received message: annotations: {b'x-opt-sequence-number-epoch': -1, b'x-opt-sequence-number': 3, b'x-opt-offset': b'472', b'x-opt-enqueued-time': 1729810622205}, header: None
2024-10-24 16:04:40,834 | MainThread | DEBUG | azure.eventhub._pyamqp.receiver | <- TransferFrame(handle=2, delivery_id=5, delivery_tag=b'', message_format=0, settled=True, more=False, rcv_settle_mode=None, state=None, resume=None, aborted=None, batchable=True, payload=b'***')
2024-10-24 16:04:40,834 | MainThread | DEBUG | azure.eventhub._pyamqp.receiver | Received message: annotations: {b'x-opt-sequence-number-epoch': -1, b'x-opt-sequence-number': 4, b'x-opt-offset': b'616', b'x-opt-enqueued-time': 1729810622267}, header: None

@swathipil swathipil changed the title [ServiceBus] add service specific message annotations to receiver logs [ServiceBus/EventHub] add service specific message annotations to receiver logs Oct 24, 2024
_LOGGER.debug(
"Received message: annotations: %r, header: %r",
message.message_annotations,
message.header,
Copy link
Member Author

@swathipil swathipil Oct 24, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think adding header here should expose any private info. I think it's useful to see delivery_count/ttl that may exist in the header in some cases. Thoughts/concerns? Are there any scenarios I'm missing where this does expose info that we don't want it to?

@azure-sdk
Copy link
Collaborator

API change check

API changes are not detected in this pull request.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants