-
Notifications
You must be signed in to change notification settings - Fork 126
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
[FEATURE] Implement Log Level Differentiation to Reduce Verbosity and Improve Filtering #420
Comments
Hi @gmij , missing attachments. |
now... on log viewr, enable filter with K=__fc:t:* and K=__fc:t:! not show. |
Hi @gmij , traveling right now, will answer as soon as I can. |
Hi @gmij I'm back on this.
All "main" events, yes. Some others more low level are at the TRACE level.
I've been thinking about this change from some time now, by also including TRACE level. Let's use the last example here, where with min level TRACE we would have (simplified):
By setting min level to DEBUG we would have instead:
And finally, by setting min level to INFO we would have:
Thoughts?
I feel the same, BUT: I did that because I haven't found a way so that the default experience of logging to a file/console would give enough informations in a quickly readable way so that debugging would still be easy or, at least, doable. If I remember correctly, by default scope variables is not included in the log output, so it became way less usable without them directly exposed. |
the log level is ok. the log message template, can try serilog , write to Console and Seq, Add {Properties:j} to the output template to include additional context information. https://github.com/serilog/serilog/wiki/Configuration-Basics#output-templates |
Description:
The current logging system outputs all events at the DEBUG level (as shown in the attached screenshot), leading to two main issues:
Excessive log volume - High-frequency debug entries (e.g., 5+ entries within 1 millisecond) cause rapid log growth
Poor log filtering - Critical events are buried in debug noise, making troubleshooting inefficient
Proposed Solution:
Implement log level differentiation following standard practices:
Use INFO level for:
• Service call initialization/entry points
• Service call completion/exit points
Reserve DEBUG level for:
• Detailed process tracing
• Internal state changes (e.g., cache operations shown in logs)
• Memory entry operations
Benefits:
Reduce log volume by 40-60% in normal operation (INFO level default)
Enable targeted debugging with level filtering
Improve operational visibility for key lifecycle events
Additional Context:
Attached logs show repeated DEBUG entries from the Fusion Cache component (memory operations, cache connectivity checks, and GetOrSet operations) that would be better classified as DEBUG, while missing higher-level INFO entries for service boundaries.
The text was updated successfully, but these errors were encountered: