You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by "Francesca Merighi (JIRA)" <ji...@apache.org> on 2014/09/08 14:37:28 UTC

[jira] [Updated] (LOG4J2-817) Log4j2 in a webapp: MongoCleaner thread creates memory leaks

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

Francesca Merighi updated LOG4J2-817:
-------------------------------------
    Description: 
I'm using log4j 2 with a MongoDBAppender in a webapp (servlet spec 2.5).

Here the web.xml:

{quote}<listener> <listener-class>org.apache.logging.log4j.web.Log4jServletContextListener</listener-class> </listener> <filter> <filter-name>log4jServletFilter</filter-name> <filter-class>org.apache.logging.log4j.web.Log4jServletFilter</filter-class> </filter> <filter-mapping> <filter-name>log4jServletFilter</filter-name> <url-pattern>/*</url-pattern> <dispatcher>REQUEST</dispatcher> <dispatcher>FORWARD</dispatcher> <dispatcher>INCLUDE</dispatcher> <dispatcher>ERROR</dispatcher> 
</filter-mapping>
{quote}
Here the log4j2 configuration:

{quote}<Configuration status="warn">
<Properties>
    <Property name="MongoDbServer">$${jndi:MongoDB.serverAddress.1.host}:$${jndi:MongoDB.serverAddress.1.port}</Property>
    <Property name="MongoDbPassword">$${jndi:MongoDB.password}</Property>
</Properties>
<Appenders>
    <NoSql name="databaseAppender">
        <MongoDb databaseName="LOGS" collectionName="test"
            server="${MongoDbServer}" username="LOGS" password="${MongoDbPassword}" />
    </NoSql>
    <Async name="Async">
        <AppenderRef ref="databaseAppender" />
    </Async>
</Appenders>
<Loggers>
    <Root level="info">
        <AppenderRef ref="Async" />
    </Root>
</Loggers>
{quote}
When i undeply the webapp, this error log appears:

SEVERE: A web application appears to have started a thread named [MongoCleaner665622824] but has failed to stop it. This is very likely to create a memory leak.


  was:
I'm using log4j 2 with a MongoDBAppender in a webapp (servlet spec 2.5).

Here the web.xml:

<listener> <listener-class>org.apache.logging.log4j.web.Log4jServletContextListener</listener-class> </listener> <filter> <filter-name>log4jServletFilter</filter-name> <filter-class>org.apache.logging.log4j.web.Log4jServletFilter</filter-class> </filter> <filter-mapping> <filter-name>log4jServletFilter</filter-name> <url-pattern>/*</url-pattern> <dispatcher>REQUEST</dispatcher> <dispatcher>FORWARD</dispatcher> <dispatcher>INCLUDE</dispatcher> <dispatcher>ERROR</dispatcher> <dispatcher>ASYNC</dispatcher><!-- Servlet 3.0 w/ disabled auto-initialization only; not supported in 2.5 --> </filter-mapping>

Here the log4j2 configuration:

<Configuration status="warn">
<Properties>
    <Property name="MongoDbServer">$${jndi:MongoDB.serverAddress.1.host}:$${jndi:MongoDB.serverAddress.1.port}</Property>
    <Property name="MongoDbPassword">$${jndi:MongoDB.password}</Property>
</Properties>
<Appenders>
    <NoSql name="databaseAppender">
        <MongoDb databaseName="LOGS" collectionName="test"
            server="${MongoDbServer}" username="LOGS" password="${MongoDbPassword}" />
    </NoSql>
    <Async name="Async">
        <AppenderRef ref="databaseAppender" />
    </Async>
</Appenders>
<Loggers>
    <Root level="info">
        <AppenderRef ref="Async" />
    </Root>
</Loggers>

When i undeply the webapp, this error log appears:

SEVERE: A web application appears to have started a thread named [MongoCleaner665622824] but has failed to stop it. This is very likely to create a memory leak.



> Log4j2 in a webapp: MongoCleaner thread creates memory leaks
> ------------------------------------------------------------
>
>                 Key: LOG4J2-817
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-817
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Appenders
>    Affects Versions: 2.0.2
>            Reporter: Francesca Merighi
>
> I'm using log4j 2 with a MongoDBAppender in a webapp (servlet spec 2.5).
> Here the web.xml:
> {quote}<listener> <listener-class>org.apache.logging.log4j.web.Log4jServletContextListener</listener-class> </listener> <filter> <filter-name>log4jServletFilter</filter-name> <filter-class>org.apache.logging.log4j.web.Log4jServletFilter</filter-class> </filter> <filter-mapping> <filter-name>log4jServletFilter</filter-name> <url-pattern>/*</url-pattern> <dispatcher>REQUEST</dispatcher> <dispatcher>FORWARD</dispatcher> <dispatcher>INCLUDE</dispatcher> <dispatcher>ERROR</dispatcher> 
> </filter-mapping>
> {quote}
> Here the log4j2 configuration:
> {quote}<Configuration status="warn">
> <Properties>
>     <Property name="MongoDbServer">$${jndi:MongoDB.serverAddress.1.host}:$${jndi:MongoDB.serverAddress.1.port}</Property>
>     <Property name="MongoDbPassword">$${jndi:MongoDB.password}</Property>
> </Properties>
> <Appenders>
>     <NoSql name="databaseAppender">
>         <MongoDb databaseName="LOGS" collectionName="test"
>             server="${MongoDbServer}" username="LOGS" password="${MongoDbPassword}" />
>     </NoSql>
>     <Async name="Async">
>         <AppenderRef ref="databaseAppender" />
>     </Async>
> </Appenders>
> <Loggers>
>     <Root level="info">
>         <AppenderRef ref="Async" />
>     </Root>
> </Loggers>
> {quote}
> When i undeply the webapp, this error log appears:
> SEVERE: A web application appears to have started a thread named [MongoCleaner665622824] but has failed to stop it. This is very likely to create a memory leak.



--
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