Is it possible to configure java.util.logging to compress log files when it "rolls" onto using a new log file? For example, an extract from my log configuration file looks like this:
java.util.logging.FileHandler.level = ALL
java.util.logging.FileHandler.pattern = /blah.log
java.util.logging.FileHandler.limit = 10000000
java.util.logging.FileHandler.count = 5
Ideally I would like current log messages to be written to blah.log.0 whilst retaining blah.log.1.gz, blah.log.2.gz, etc.
Also please note that I do not wish to use a different logging framework.
解决方案
Yes but you must write your own file handler. Just copy the source code for FileHandler into your project (you can't extend the class in any useful way) and modify the open() method of MeteredStream.
After that, just use the normal configuration to use your new handler.