logging-log4j-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Leo R <paralaspagin...@gmail.com>
Subject Re: Problem with log4j2.configurationFile. Using log4j2.properties with custom file name.
Date Wed, 19 Dec 2018 13:30:37 GMT
Hi!
i actived log4j.debug and i give this: log4javaDebug.txt
In this debug logs my custom file is charged but log4j2 do the
reconfiguration:

 DEBUG StatusLogger Reconfiguration started for context[name=1e163e2] at
URI null (org.apache.logging.log4j.core.LoggerContext@139ae54a) with
optional ClassLoader: null

I have this configuration at the start of web.xml:
<context-param>
        <param-name>isLog4jAutoInitializationDisabled</param-name>
        <param-value>true</param-value>
    </context-param>
    <context-param>
        <param-name>log4jContextName</param-name>
        <param-value>mdes</param-value>
    </context-param>
    <context-param>
        <param-name>log4jConfiguration</param-name>
        <param-value>classpath:conf-hub-digital-log4j2.xml</param-value>
    </context-param>
     <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>

Please could you help me?
Why <context-param>
        <param-name>isLog4jAutoInitializationDisabled</param-name>
        <param-value>true</param-value>
    </context-param>
is not disabling the reconfiguration?

Best Regards!

El jue., 13 dic. 2018 a las 17:30, Leo R (<paralaspaginas5@gmail.com>)
escribió:

> Hi all!
>
> I have 5 web.xml because i have different maven projects inside my main
> project.
>
> Main:
>
> ·         main-core
>
> ·         main-app
>
> ·         main-web (in this web.xml I am writing my configuration)
>
> ·         child-name1-core
>
> ·         child-name1-web
>
> ·         child-name2-core
>
> ·         child-name2-web
>
> ·         child-name3-core
>
> ·         child-name3-web
>
> ·         child-name4-core
>
> ·         child-name4-web
>
>
>
> I have servlet 3.1 and I think that the problem is the context.
>
> I tried to use isLog4jAutoInitializationDisabled in all web.xml except
> main-web (in this web.xml setting all following Servlet 2.5 Web
> Applications from http://logging.apache.org/log4j/2.x/manual/webapp.html
> because you say that in case of isLog4jAutoInitializationDisabled you
> need to have the same configuration of servlet 2.5):
>
> 1.   <context-param>
>
> 2.  <param-name>isLog4jAutoInitializationDisabled</param-name>
>
> 3.  <param-value>true</param-value>
>
> 4.  </context-param>
>
> And this solution not found.
>
>
>
> Why is not included some configuration like:
>
>  URL log4jURL = Loader.getResource(Log4javaFileName);
>  if (log4jURL == null) {
>       throw new Exception();
> }
> PropertyConfigurator.configure(log4jURL);
>
> ?
>
> Could you help me, please?
>
> Thanks for all support.
>
> El vie., 7 dic. 2018 a las 16:36, Matt Sicker (<boards@gmail.com>)
> escribió:
>
>> Could you define the system property "log4j2.debug" and include the debug
>> log info?
>>
>> On Fri, 7 Dec 2018 at 02:59, Leo R <paralaspaginas5@gmail.com> wrote:
>>
>> > Hi!
>> > Yes i included core, api and web.
>> > I tested:
>> > log4j2-name.xml ->not found
>> > Property on web.xml -> not found
>> > Could you give more ideas please?
>> >
>> > El El mié, 5 dic 2018 a las 23:28, Matt Sicker <boards@gmail.com>
>> > escribió:
>> >
>> > > Are you including log4j-web in your war as well?
>> > >
>> > > On Wed, 5 Dec 2018 at 10:43, paginas <paralaspaginas5@gmail.com>
>> wrote:
>> > >
>> > > > I added in my web.xml
>> > > > <context-param>
>> > > >         <param-name>log4jConfiguration</param-name>
>> > > >         <param-value>file:///C:/
>> > > >
>> > >
>> >
>> <file:///C:/name/src/particularName/configuracion/entorno/conf-especial-name-log4j2.properties%3C/param-value%3E>name
>> > > >
>> > >
>> >
>> <file:///C:/name/src/particularName/configuracion/entorno/conf-especial-name-log4j2.properties%3C/param-value%3E>/
>> > > >
>> > >
>> >
>> <file:///C:/name/src/particularName/configuracion/entorno/conf-especial-name-log4j2.properties%3C/param-value%3E>src
>> > > >
>> > >
>> >
>> <file:///C:/name/src/particularName/configuracion/entorno/conf-especial-name-log4j2.properties%3C/param-value%3E>/particularName/
>> > > >
>> > >
>> >
>> <file:///C:/name/src/particularName/configuracion/entorno/conf-especial-name-log4j2.properties%3C/param-value%3E>configuracion
>> > > >
>> > >
>> >
>> <file:///C:/name/src/particularName/configuracion/entorno/conf-especial-name-log4j2.properties%3C/param-value%3E>/
>> > > >
>> > >
>> >
>> <file:///C:/name/src/particularName/configuracion/entorno/conf-especial-name-log4j2.properties%3C/param-value%3E>entorno
>> > > >
>> > >
>> >
>> <file:///C:/name/src/particularName/configuracion/entorno/conf-especial-name-log4j2.properties%3C/param-value%3E>/
>> > > >
>> > >
>> >
>> <file:///C:/name/src/particularName/configuracion/entorno/conf-especial-name-log4j2.properties%3C/param-value%3E>conf
>> > > >
>> > >
>> >
>> <file:///C:/name/src/particularName/configuracion/entorno/conf-especial-name-log4j2.properties%3C/param-value%3E>-especial-name-log4j2.properties
>> > > >
>> > >
>> >
>> <file:///C:/name/src/particularName/configuracion/entorno/conf-especial-name-log4j2.properties%3C/param-value%3E></
>> > > >
>> > >
>> >
>> <file:///C:/name/src/particularName/configuracion/entorno/conf-especial-name-log4j2.properties%3C/param-value%3E>param-value
>> > > >
>> > >
>> >
>> <file:///C:/name/src/particularName/configuracion/entorno/conf-especial-name-log4j2.properties%3C/param-value%3E>>
>> > > >
>> > >
>> >
>> <file:///C:/name/src/particularName/configuracion/entorno/conf-especial-name-log4j2.properties%3C/param-value%3E>
>> > > >     </context-param>
>> > > >
>> > > > And my application not works
>> > > >
>> > > > Could you give more support please?
>> > > >
>> > > > > El 5 dic 2018, a las 16:27, Ralph Goers <
>> ralph.goers@dslextreme.com>
>> > > > escribió:
>> > > > >
>> > > > > Even simpler. Just name the file "log4j2-name.xml” where “name”
is
>> > the
>> > > > name of the web application.
>> > > > >
>> > > > > Ralph
>> > > > >
>> > > > >> On Dec 5, 2018, at 8:23 AM, Ralph Goers <
>> ralph.goers@dslextreme.com
>> > >
>> > > > wrote:
>> > > > >>
>> > > > >> From what you are describing I would set log4jConfiguration
in
>> your
>> > > web
>> > > > application’s web.xml as a context parameter. See
>> > > > http://logging.apache.org/log4j/2.x/manual/webapp.html <
>> > > > http://logging.apache.org/log4j/2.x/manual/webapp.html>.
>> > > > >>
>> > > > >> Ralph
>> > > > >>
>> > > > >>
>> > > > >>> On Dec 5, 2018, at 7:54 AM, paginas <paralaspaginas5@gmail.com
>> > > > <mailto:paralaspaginas5@gmail.com>> wrote:
>> > > > >>>
>> > > > >>> Dear Log4j Team,
>> > > > >>>
>> > > > >>> First of all, thanks for your work. I am Leo, an Spanish
web
>> > > developer
>> > > > that need some help.
>> > > > >>>
>> > > > >>> I am migrating one of our project from slf4j v. 1.7.21
to log4j
>> > > > v.2.11.1 and I have this problem:
>> > > > >>>
>> > > > >>> -In my web project, we need to have the log4j.configurationFile
>> > with
>> > > a
>> > > > particular name: Particular_web_app_log4j2.properties (example name)
>> > > > >>>
>> > > > >>> We cannot set the default log4j2.properties, log4j2.xml,
etc in
>> our
>> > > > repository.
>> > > > >>> In slf4j we solved this situation with this code. (with
this,
>> all
>> > > sl4j
>> > > > configuration is loaded from our custom log4j.properties):
>> > > > >>>
>> > > > >>>     URL log4jURL = Loader.getResource(Log4javaFileName);
>> > > > >>>     if (log4jURL == null) {
>> > > > >>>           throw new Exception();
>> > > > >>>     }
>> > > > >>>     PropertyConfigurator.configure(log4jURL);
>> > > > >>>
>> > > > >>> In log4j2 this method is deprecated and I found some
>> alternatives,
>> > > but
>> > > > any of them worked.
>> > > > >>> Solution one:
>> > > > >>> Set this property in my first line of code:
>> > > > >>> System.setProperty("log4j.configurationFile",Log4java2FileName);
>> > > > >>>              It not works in my Websphere Application
Server
>> > because
>> > > > log4j2 try to charge before my first web app line of code.
>> > > > >>> Solution two:
>> > > > >>>                               using java -D option which
sets a
>> > > system
>> > > > property on server start.
>> > > > >>>                               It not works in my Websphere
>> > > Application
>> > > > Server because it is an application server with other applications
>> and
>> > we
>> > > > share the node, this change can affect to other apps.
>> > > > >>> Solution three:
>> > > > >>> Using an recharge of properties from custom XML properties:
>> > > > >>> InputStream log4javaFile =
>> > > > getClass().getClassLoader().getResourceAsStream(Log4java2FileName);
>> > > > >>>           ConfigurationSource configuration =
>> > > > newConfigurationSource(log4javaFile);
>> > > > >>> Configurator.initialize(null, configuration);
>> > > > >>> It not works in my project because a regret to include
this
>> code in
>> > > my
>> > > > InitContext (first point of code), this change only affect in some
>> > class,
>> > > > not in all context. (I have different servlets in my application and
>> > > there
>> > > > are not affected by this change)
>> > > > >>>
>> > > > >>> Question:
>> > > > >>>               Is there an easy alternative for adjusting
the
>> > > > properties file? (some like slf4j configuration)
>> > > > >>>
>> > > > >>> I would be very grateful if you could help me because
I can not
>> > find
>> > > a
>> > > > solution and I would like to be able to use the new log4j2.
>> > > > >>> Best regards!
>> > > > >>
>> > > > >
>> > > >
>> > > >
>> > >
>> > > --
>> > > Matt Sicker <boards@gmail.com>
>> > >
>> >
>>
>>
>> --
>> Matt Sicker <boards@gmail.com>
>>
>

Mime
View raw message