logging-log4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Remko Popma (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (LOG4J2-1334) Garbage-free synchronous logging: add LogEventFactory that reuses a cached LogEvent
Date Fri, 22 Apr 2016 06:14:12 GMT

    [ https://issues.apache.org/jira/browse/LOG4J2-1334?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15244659#comment-15244659
] 

Remko Popma edited comment on LOG4J2-1334 at 4/22/16 6:13 AM:
--------------------------------------------------------------

I made good progress on this ticket in the last week. Still to do:

(/) I need to add more unit tests for MutableLogEvent and the ReusableLogEventFactory.
(/) Two of the current unit tests fail when I enable synchronous garbage-free logging: CsvParameterLayoutTest
and LoggerTest.paramWithExceptionTest(). Both are related to LOG4J2-1342: passing on parameters
in a (reusable) ParameterizedMessage from the application thread to the asynchronous background
thread.
(/) The new GcFreeMixedSyncAyncLoggingTest fails because AsyncLoggerConfigDisruptor#prepareEvent
allocates objects.
(-) Started working on a latency test to compare garbage-free logging to classic logging.
To be resolved in LOG4J2-1297.


was (Author: remkop@yahoo.com):
I made good progress on this ticket in the last week. Still to do:

(/) I need to add more unit tests for MutableLogEvent and the ReusableLogEventFactory.
(-) Two of the current unit tests fail when I enable synchronous garbage-free logging: CsvParameterLayoutTest
and LoggerTest.paramWithExceptionTest(). Both are related to LOG4J2-1342: passing on parameters
in a (reusable) ParameterizedMessage from the application thread to the asynchronous background
thread.
(-) The new GcFreeMixedSyncAyncLoggingTest fails because AsyncLoggerConfigDisruptor#prepareEvent
allocates objects.
(-) Started working on a latency test to compare garbage-free logging to classic logging.

> Garbage-free synchronous logging: add LogEventFactory that reuses a cached LogEvent
> -----------------------------------------------------------------------------------
>
>                 Key: LOG4J2-1334
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-1334
>             Project: Log4j 2
>          Issue Type: Improvement
>          Components: Core
>    Affects Versions: 2.5
>            Reporter: Remko Popma
>            Assignee: Remko Popma
>             Fix For: 2.6
>
>
> Until now I kept the scope of the garbage-free logging epic LOG4J2-1270 limited to asynchronous
logging with all loggers asynchronous. This seemed a natural thing to do since async loggers
already have pre-allocated all LogEvent instances.
> Now that LOG4J2-1270 is nearing completion it looks as if the only thing that is required
to allow synchronous logging to be garbage-free is a reusable LogEvent implementation, stored
in a ThreadLocal. This ticket is to analyse  and track the work for this option.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org


Mime
View raw message