Skip to content

Support disabling the reset of the logging system#430

Open
jpmsilva wants to merge 1 commit into
ulisesbocchio:masterfrom
jpmsilva:support-disable-logging-reset
Open

Support disabling the reset of the logging system#430
jpmsilva wants to merge 1 commit into
ulisesbocchio:masterfrom
jpmsilva:support-disable-logging-reset

Conversation

@jpmsilva
Copy link
Copy Markdown

This PR allows disabling the logging system reset introduced with com.ulisesbocchio.jasyptspringboot.configuration.EnableEncryptablePropertiesBeanFactoryPostProcessor#reinitializeLoggingSystem

The default behavior is to still reset the logging system unless otherwise specified.

A new Spring Boot property is introduced, called jasypt.encryptor.reset-logging-system, which, when set to false, disables the reset behavior.

We support early logging customization with an ApplicationContextInitializer. Our customizations dynamically introduce appenders and logging filters, depending on environmental conditions. We do this very early to capture as much of the log of the startup sequence as possible.

Resetting the logging system after the fact introduced all sort of issues. Any customizations are lost, and we lose things like the SLF4JBridgeHandler (see #428), as well as things like stdout/stderr capturing (see uk.org.lidalia:sysout-over-slf4j).

This PR aims to allow an easy configuration to disable that behavior, if one does not rely on encrypted properties in the logging system. It also creates a workaround for #428.

@jpmsilva
Copy link
Copy Markdown
Author

Also, for the time being, we will stay on 3.0.5, as the logging system reset in the 4.x line is a breaking change for our use cases.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant