More—
17. What are the semantics of logging: synchronous or asynchronous? Blocking or non-blocking? Does this change when the queue is full? This is important if a log message contains mutable objects which might be interpreted for string output long after the log message is queued: perhaps a string form for output should be generated *before* enqueuing a message, otherwise the content could change subsequent to queuing and prior to converting to string form. At the very least the javadoc should spell this out, putting the onus on the client if necessary.
18. Is there a guaranteed order for emitting log messages? A first-in-first-out guarantee across all threads? Does FINE vs INFO matter?
19. Location of the log file, its format, the naming conventions for rotation might be considered Exported Interfaces. Better to say something about this.
20. Is the log file in any fixed format eg CR/LF vs LF vs CR? Or is it platform specific?
[Message sent by forum member 'llc' (llc)]
http://forums.java.net/jive/thread.jspa?messageID=328468