[logback-dev] [JIRA] Commented: (LBCLASSIC-88) Use System.nanoTime() instead of System.currentTimeMillis() for LogEvent timestamp

Thorbjoern Ravn Andersen (JIRA) noreply-jira at qos.ch
Thu Nov 20 19:19:14 CET 2008

    [ http://jira.qos.ch/browse/LBCLASSIC-88?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=10930#action_10930 ] 

Thorbjoern Ravn Andersen commented on LBCLASSIC-88:

My personal interest is just having better resolution on the milliseconds part of the timestamps under Windows, and I would be happy with emulating the current behaviour by using nanoTime()/1000 to get a timestamp.    Just use a factory to get the method so it can be overriden later...

If you want, I can do this and commit it.  It should be transparently compatible.

> Use System.nanoTime() instead of System.currentTimeMillis() for LogEvent timestamp
> ----------------------------------------------------------------------------------
>                 Key: LBCLASSIC-88
>                 URL: http://jira.qos.ch/browse/LBCLASSIC-88
>             Project: logback-classic
>          Issue Type: Improvement
>    Affects Versions: 0.9.12
>            Reporter: Thorbjoern Ravn Andersen
>            Assignee: Logback dev list
>            Priority: Minor
> Apparently the System.nanoTime() is better suited than System.currentTimeMillis() for the relative time measurements done in logback, plus hopefully the resolution is finer giving more reliable figures for small operations.   Apparently the currentTimeMillis resolution is 15 ms under XP where the nanoTimer is much finer.  Under OS X both have a resolution of 1 ms.
> As logback requires Java 5 where this is standard, it would be simple to make the switch.
> Note:  http://www.techper.net/2008/08/10/systemcurrenttimemillis-systemnanotime-and-their-resolution/ lists that it may be relevant to create a factory for this instead of just hardlinking to the java runtime so it is possible to link to another time source:
> "A more robust timer with a 1msec resolution is LWJGL's Sys.getTime which uses TGT (time get time) on Windows and currentTimeMillis elsewhere."

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators: http://jira.qos.ch/secure/Administrators.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the logback-dev mailing list