Details
-
New Feature
-
Status: Open
-
Major
-
Resolution: Unresolved
-
2.4
-
None
-
None
Description
In many cases logging is filtered in production to reduce the overhead of logging. Unfortunately, this means that when an error occurs there may not be enough logging information available to diagnose the problem. On the other hand, if filtering is minimized then the amount of data being logged can be overwhelming.
This enhancement would allow log events to be written to a buffer and not processed any further until a triggering event occurs. Once that trigger occurs all the events in the buffer would be logged in sequence and pass through the normal filtering process. Some log events that are deemed "special" would need to be allowed to bypass the buffer and immediately be processed.
One way to accomplish this would be to add a new LogBuffer component to the configuration. If configured, the ReliabilityStrategies could be modified to work with the LogBuffer or a BufferingReliabilityWrapperStrategy could be created to wrap the existing strategies.
Note - no code has been written for this yet. I'd want to figure out what the configuration might look like before starting.
Attachments
Issue Links
- is duplicated by
-
LOG4J2-3032 Memory appender that can be flushed to another appender later
- Closed
- is related to
-
LOG4J2-2538 A memory appender that can be triggered to dump in-memory logging messages to file
- Open
- relates to
-
LOG4J2-2798 Capability to get windowed aggregation for log events
- Open
-
LOG4J2-1630 Unit of Work Logging
- Open
-
LOG4J2-1401 Support changing the log level for all messages related to some domain object
- Closed