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.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status