Uploaded image for project: 'Log4j 2'
  1. Log4j 2
  2. LOG4J2-455

RingBufferLogEvent should use Messsage timestamp first

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.0-beta9
    • None
    • Appenders
    • None

    Description

      When AsyncLogger received log message (method

       public void log(final Marker marker, final String fqcn, final Level level, final Message data,
                  final Throwable t)
      

      ), currently it uses

      clock.currentTimeMillis()
      

      (see at Line 221) as the timestamp.

      But it should check the message implements TimestampMessage or not, if yes, should use TimestampMessage.getTimestamp() as the timestamp, if not , then using clock.currentTimeMillis().

      The new Code:

      data instanceof TimestampMessage ? ((TimestampMessage) data ).getTimestamp() : clock.currentTimeMillis();
      

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            rpopma Remko Popma
            robinzt robin zhang tao
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment