I finally found the post where I proposed the original solution.
I modified the properties file to be
handlers=games.strategy.debug.ConsoleHandler games.strategy.net.nio.NioWriter.level=FINEST games.strategy.net.nio.NioReader.level=FINEST
but unfortunately I got a
Can't load log handler "games.strategy.debug.ConsoleHandler" java.lang.InstantiationException: games.strategy.debug.ConsoleHandler
ConsoleHandlerclass no longer has a default constructor.
So we need a code change either way unfortunately, adding a default constructor might be the fastest way nevertheless though.
I was playing around with the logging system recently. I discovered that specifying the
games.strategy.debug.ConsoleHandler in the configuration file appears to be unnecessary since it is registered in code during application startup. That means you can remove the
handlers property to avoid the
InstantiationException, but the logger level configuration lines continue to be processed as expected.
In summary, even though our
ConsoleHandler doesn't provide a default constructor, the approach you proposed above should continue to be a viable solution if we ever need to provide a custom logger configuration (at least with respect to log levels).