-
-
Notifications
You must be signed in to change notification settings - Fork 174
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
fix: allow RollingFileAppender to always run #280
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
A permission exception (e.g., from the user not granting permission in SDK 23+) causes `<property file="">` to result in a FileNotFound exception with an inner "permission denied" error, but this is hidden in the logs. This patch adds the exception to the log to help troubleshoot the problem.
* When using assets/logback.xml, main URL to watch was not set because an input stream was passed to GenericConfigurator instead of a URL. Without a main URL, reconfigure-on-change was disabled. This patch gets the assets resource as a URL instead to allow the reconfigure-on-change to proceed. * Special props were missing from the reconfiguration because the context was reset beforehand, but the special props were not reinserted into the context. This patch performs the necessary setup.
InvocationGate was originally added to improve performance in scenarios of high frequency logging, as the rollover-condition check (file size for SizeBasedTriggeringPolicy) could be relatively expensive especially for large files. The "gate" effectively ignored some logging/rollover events that occurred close together in time. However, this feature causes data loss from the ignored logging events and oversized active log files from missed rollover events. The feature itself seems like a bandaid for a larger performance problem that should've been solved in a different manner, but it ultimately caused worse problems. Thus, I'm removing InvocationGate and allowing RollingFileAppender and its triggers to run freely.
…xternalStorageState() returning null (#204)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Changes:
RollingFileAppender
doesn't always rollover logsjava.util.logging
support (JULHelper
)