[ 
https://issues.apache.org/jira/browse/LOG4J2-1297?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Remko Popma updated LOG4J2-1297:
--------------------------------
    Description: 
Update the site with a description of which configurations are GC-free (i.e., 
that don't create temporary objects in steady running state).

Currently that means
* Loggers are all asynchronous (Log4jContextSelector is set to 
org.apache.logging.log4j.core.async.AsyncLoggerContextSelector)
* the configuration does not contain a <Properties> section
* the "steady-state" appenders are either RandomAccessFile or 
RollingRandomAccessFile Appenders (logging to any other appender will cause 
temporary objects to be created - including ConsoleAppender)
* the Layout is a PatternLayout that uses one of the pre-defined date formats, 
does not have any regular expression replacements, and does not have lookups 
(TODO: may need to restrict this further)

Furthermore, we need to explain that some of this functionality depends on 
ThreadLocals and so is disabled by default in web applications to prevent 
memory leaks. The page should also explain how to manually switch off the use 
of ThreadLocals.

Finally, the page should show a performance test comparison similar to the 
[performance 
section|http://logging.apache.org/log4j/2.x/manual/async.html#Performance] on 
the Async Loggers page. I'm thinking a comparison between Logback, Log4j-1, 
Log4j-2.0, Log4j-2.6 "classic" and Log4j-2.6 "gc-free" would be ideal.

  was:
Update the site with a description of which configurations are GC-free (i.e., 
that don't create temporary objects in steady running state).

Currently that means
* Loggers are all asynchronous (Log4jContextSelector is set to 
org.apache.logging.log4j.core.async.AsyncLoggerContextSelector)
* the configuration does not contain a <Properties> section
* the configuration only contains a RandomAccessFileAppender or a 
RollingRandomAccessFileAppender (logging to any other appender will cause 
temporary objects to be created - including ConsoleAppender)
* the Layout is a PatternLayout that uses one of the pre-defined date formats, 
does not have any regular expression replacements, and does not have lookups 
(TODO: may need to restrict this further)

Furthermore, we need to explain that some of this functionality depends on 
ThreadLocals and so is disabled by default in web applications to prevent 
memory leaks. The page should also explain how to manually switch off the use 
of ThreadLocals.

Finally, the page should show a performance test comparison similar to the 
[performance 
section|http://logging.apache.org/log4j/2.x/manual/async.html#Performance] on 
the Async Loggers page. I'm thinking a comparison between Logback, Log4j-1, 
Log4j-2.0, Log4j-2.6 "classic" and Log4j-2.6 "gc-free" would be ideal.


> Document "gc-free" configuration and performance
> ------------------------------------------------
>
>                 Key: LOG4J2-1297
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-1297
>             Project: Log4j 2
>          Issue Type: New Feature
>          Components: Documentation
>    Affects Versions: 2.5
>            Reporter: Remko Popma
>            Assignee: Remko Popma
>
> Update the site with a description of which configurations are GC-free (i.e., 
> that don't create temporary objects in steady running state).
> Currently that means
> * Loggers are all asynchronous (Log4jContextSelector is set to 
> org.apache.logging.log4j.core.async.AsyncLoggerContextSelector)
> * the configuration does not contain a <Properties> section
> * the "steady-state" appenders are either RandomAccessFile or 
> RollingRandomAccessFile Appenders (logging to any other appender will cause 
> temporary objects to be created - including ConsoleAppender)
> * the Layout is a PatternLayout that uses one of the pre-defined date 
> formats, does not have any regular expression replacements, and does not have 
> lookups (TODO: may need to restrict this further)
> Furthermore, we need to explain that some of this functionality depends on 
> ThreadLocals and so is disabled by default in web applications to prevent 
> memory leaks. The page should also explain how to manually switch off the use 
> of ThreadLocals.
> Finally, the page should show a performance test comparison similar to the 
> [performance 
> section|http://logging.apache.org/log4j/2.x/manual/async.html#Performance] on 
> the Async Loggers page. I'm thinking a comparison between Logback, Log4j-1, 
> Log4j-2.0, Log4j-2.6 "classic" and Log4j-2.6 "gc-free" would be ideal.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to