Skip to content

[FEATURE REQ] Support log throttling #36814

Open

Description

Sometimes, when connectivity issues happen, SDKs produce an enormous amount of logs describing transient issues.

E.g. this happened over 48 days when the service experienced connectivity issues, resulting in ~500 INFO log records from AmqpChannelProcessor alone.

severity category occurences
Info com.azure.core.amqp.implementation.AmqpChannelProcessor 1896369417
Info com.azure.core.amqp.implementation.ReactorConnection 512631634
Info com.azure.core.amqp.implementation.handler.ReceiveLinkHandler 471851558
Info com.azure.core.amqp.implementation.handler.SendLinkHandler 471851508
Info com.azure.core.amqp.implementation.handler.ConnectionHandler 56639800
Info com.azure.messaging.servicebus.ServiceBusProcessorClient 56264096
Info com.azure.messaging.servicebus.implementation.ServiceBusConnectionProcessor 42014609
Info com.azure.core.amqp.implementation.handler.SessionHandler 41983458
Info com.azure.core.amqp.implementation.RequestResponseChannel 22887761
Info com.azure.messaging.servicebus.ServiceBusClientBuilder 21009875

While we can (and should) adjust logging levels in #20836, it should also be useful to throttle logs at specific threshold configurable by users (can be off by default or on at some enormous numbers). It would provide a safe belt in case of unexpected issues and won't make them worse because of extra logging.
We can also write a warn log when throttling starts every once in a while.

The concern here is that throttling can be a logging implementation feature and we need to investigate if sinks provide existing solutions.

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

Metadata

Assignees

No one assigned

    Labels

    Azure.Coreazure-coreAzure.Core.AMQPazure-core-amqpClientThis issue points to a problem in the data-plane of the library.Service BusamqpLabel for tracking issues related to AMQPneeds-team-attentionWorkflow: This issue needs attention from Azure service team or SDK teamneeds-team-triageWorkflow: This issue needs the team to triage.

    Type

    No type

    Projects

    • Status

      No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions