views:

668

answers:

3

Hi I was wondering if anyone knows a way to append a timestamp to the log file name specified through logging.properties java.util.logging.FileHandler.pattern

seems like something pretty straight forward but I cant seem to find a solution to this anywhere.

Thanks

A: 

You could use SLF4J which points again back to java.util.logging packages which seems to have this feature http://javablog.co.uk/2008/07/12/logging-with-javautillogging/

alternatively for a no-third-party-frameworks approach you can use a CustomFormatter a sample of which is already available here, http://www.kodejava.org/examples/458.html

Calm Storm
A: 

I am afraid that just by configuration you can't set the file name in teh way you want.

Have a look at the code in FileHandler.generate() to convince you.

What you can do is write your own FileHandler that will handle this naming or switch to another log framework.

If you use java.util.logging, I wrote some years ago a Formatter & a Handler that can still be usefull, feel free to use.

Matthieu BROUILLARD
A: 

You could instantiate the FileHandler in code with pattern, limit, count etc parameters. So, the pattern string can be formed consisting of date and time.

example :

String timeStamp = new SimpleDateFormat().format( new Date() ); FileHandler fh = new FileHandler( "./jay_log_%u.%g_" + timeStamp + ".log", 30000, 4); logger.addHandler(fh);

cheers, jay

jay