Failing to initialize log4j2 configuration dynamically

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Failing to initialize log4j2 configuration dynamically

Roman Sosnin
Failing to initialize log4j2 configuration dynamically - supplying a JSON
configuration node while json nodes are in random order.

Environment: Linux - CentOS 6
Component/s: Configurators
Affects Version/s: 2.8.1

For example, this one works for me:
"configuration":
{ "status":"...", "name":"...", "properties":"...", "appenders":"...",
"loggers":"..." }
But this one fails:
"configuration":
{ "status":"...", "name":"...", "appenders":"...", "loggers":"...",
"properties":"..." }
PAY ATTENTION: "properties" node is the last node and not 3rd.
Initializing the config programmatically this way:
JsonNode logObject =
ConfigManager.getInstance().getContainerDefinition().at(CONFIG_LOGGING_JAVA_NODE);
InputStream stream = new
ByteArrayInputStream(logObject.toString().getBytes());
ConfigurationSource source = new ConfigurationSource(stream);
Configuration ourConfig = new
JsonConfiguration(LoggerContext.getContext(), source);
Configurator.initialize(ourConfig);
where logObject is the actual log4j2 JSON config node.
Any thoughts? Bug? API Misuse?

Thanks!

Regards,
Roman Sosnin
Backend Server Side Developer
Trusteer Security
IBM Israel Software Lab
Office: +972-(0)74-7922783

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Failing to initialize log4j2 configuration dynamically

Gary Gregory-4
I think there is a Jira ticket already about this, if not, do create one
please. Are you available to create a failing unit test? A patch for a fix
as well perhaps?

Gary

On Jun 18, 2017 3:00 AM, "Roman Sosnin" <[hidden email]> wrote:

> Failing to initialize log4j2 configuration dynamically - supplying a JSON
> configuration node while json nodes are in random order.
>
> Environment: Linux - CentOS 6
> Component/s: Configurators
> Affects Version/s: 2.8.1
>
> For example, this one works for me:
> "configuration":
> { "status":"...", "name":"...", "properties":"...", "appenders":"...",
> "loggers":"..." }
> But this one fails:
> "configuration":
> { "status":"...", "name":"...", "appenders":"...", "loggers":"...",
> "properties":"..." }
> PAY ATTENTION: "properties" node is the last node and not 3rd.
> Initializing the config programmatically this way:
> JsonNode logObject =
> ConfigManager.getInstance().getContainerDefinition().at(
> CONFIG_LOGGING_JAVA_NODE);
> InputStream stream = new
> ByteArrayInputStream(logObject.toString().getBytes());
> ConfigurationSource source = new ConfigurationSource(stream);
> Configuration ourConfig = new
> JsonConfiguration(LoggerContext.getContext(), source);
> Configurator.initialize(ourConfig);
> where logObject is the actual log4j2 JSON config node.
> Any thoughts? Bug? API Misuse?
>
> Thanks!
>
> Regards,
> Roman Sosnin
> Backend Server Side Developer
> Trusteer Security
> IBM Israel Software Lab
> Office: +972-(0)74-7922783
>
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Failing to initialize log4j2 configuration dynamically

Roman Sosnin
Hi,

Yea I've opened a Jira ticket for this issue. I will create a failing unit
test as soon as I can & then upload it.

For now any thoughts? Bug ? API Misuse?

Thanks

Regards,
Roman Sosnin
Backend Server Side Developer
Trusteer Security
IBM Israel Software Lab
Office: +972-(0)74-7922783



From:   Gary Gregory <[hidden email]>
To:     Log4J Users List <[hidden email]>
Date:   18/06/2017 19:14
Subject:        Re: Failing to initialize log4j2 configuration dynamically



I think there is a Jira ticket already about this, if not, do create one
please. Are you available to create a failing unit test? A patch for a fix
as well perhaps?

Gary

On Jun 18, 2017 3:00 AM, "Roman Sosnin" <[hidden email]> wrote:

> Failing to initialize log4j2 configuration dynamically - supplying a
JSON

> configuration node while json nodes are in random order.
>
> Environment: Linux - CentOS 6
> Component/s: Configurators
> Affects Version/s: 2.8.1
>
> For example, this one works for me:
> "configuration":
> { "status":"...", "name":"...", "properties":"...", "appenders":"...",
> "loggers":"..." }
> But this one fails:
> "configuration":
> { "status":"...", "name":"...", "appenders":"...", "loggers":"...",
> "properties":"..." }
> PAY ATTENTION: "properties" node is the last node and not 3rd.
> Initializing the config programmatically this way:
> JsonNode logObject =
> ConfigManager.getInstance().getContainerDefinition().at(
> CONFIG_LOGGING_JAVA_NODE);
> InputStream stream = new
> ByteArrayInputStream(logObject.toString().getBytes());
> ConfigurationSource source = new ConfigurationSource(stream);
> Configuration ourConfig = new
> JsonConfiguration(LoggerContext.getContext(), source);
> Configurator.initialize(ourConfig);
> where logObject is the actual log4j2 JSON config node.
> Any thoughts? Bug? API Misuse?
>
> Thanks!
>
> Regards,
> Roman Sosnin
> Backend Server Side Developer
> Trusteer Security
> IBM Israel Software Lab
> Office: +972-(0)74-7922783
>
>




Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Failing to initialize log4j2 configuration dynamically

Gary Gregory-4
My guess is that it's a bug. Can't be sure until we see a failing unit
test. At least, that's the easiest way.

Gary

On Wed, Jun 21, 2017 at 12:06 AM, Roman Sosnin <[hidden email]> wrote:

> Hi,
>
> Yea I've opened a Jira ticket for this issue. I will create a failing unit
> test as soon as I can & then upload it.
>
> For now any thoughts? Bug ? API Misuse?
>
> Thanks
>
> Regards,
> Roman Sosnin
> Backend Server Side Developer
> Trusteer Security
> IBM Israel Software Lab
> Office: +972-(0)74-7922783
>
>
>
> From:   Gary Gregory <[hidden email]>
> To:     Log4J Users List <[hidden email]>
> Date:   18/06/2017 19:14
> Subject:        Re: Failing to initialize log4j2 configuration dynamically
>
>
>
> I think there is a Jira ticket already about this, if not, do create one
> please. Are you available to create a failing unit test? A patch for a fix
> as well perhaps?
>
> Gary
>
> On Jun 18, 2017 3:00 AM, "Roman Sosnin" <[hidden email]> wrote:
>
> > Failing to initialize log4j2 configuration dynamically - supplying a
> JSON
> > configuration node while json nodes are in random order.
> >
> > Environment: Linux - CentOS 6
> > Component/s: Configurators
> > Affects Version/s: 2.8.1
> >
> > For example, this one works for me:
> > "configuration":
> > { "status":"...", "name":"...", "properties":"...", "appenders":"...",
> > "loggers":"..." }
> > But this one fails:
> > "configuration":
> > { "status":"...", "name":"...", "appenders":"...", "loggers":"...",
> > "properties":"..." }
> > PAY ATTENTION: "properties" node is the last node and not 3rd.
> > Initializing the config programmatically this way:
> > JsonNode logObject =
> > ConfigManager.getInstance().getContainerDefinition().at(
> > CONFIG_LOGGING_JAVA_NODE);
> > InputStream stream = new
> > ByteArrayInputStream(logObject.toString().getBytes());
> > ConfigurationSource source = new ConfigurationSource(stream);
> > Configuration ourConfig = new
> > JsonConfiguration(LoggerContext.getContext(), source);
> > Configurator.initialize(ourConfig);
> > where logObject is the actual log4j2 JSON config node.
> > Any thoughts? Bug? API Misuse?
> >
> > Thanks!
> >
> > Regards,
> > Roman Sosnin
> > Backend Server Side Developer
> > Trusteer Security
> > IBM Israel Software Lab
> > Office: +972-(0)74-7922783
> >
> >
>
>
>
>
>
Loading...