Re: [External] Re: Log4j2 Async logger fallback method

2018-01-18 Thread Mikael Ståldal
Can you provide some more information about your environment, to we are 
able to reproduce this issue?



On 2018-01-16 16:50, Fröstl, Christian wrote:

Hi Mikael,

Unfortunately it is not working in my setup to include the 
log4j2.component.properties file.
I am not possible at the moment to configure the another asyncQueueFullPolicy.

I tried the following ways: (we are using Hybris)

First Try:
1. Configure the asynclogger with xml configuration which resides in classpath
2. Add the following values to local.properties file
a. log4j2.config.xml=hybris-log4j2.xml
b. log4j2.asyncLoggerRingBufferSize=26
c. log4j2.asyncQueueFullPolicy=Discard
d. log4j2.discardThreshold=DEBUG

Second Try:
1. Configure the asynclogger with xml configuration which resides in classpath
2. Add the following values to log4j2.component.properties which resides in 
same classpath
a. log4j2.config.xml=hybris-log4j2.xml
b. log4j2.asyncLoggerRingBufferSize=26
c. log4j2.asyncQueueFullPolicy=Discard
d. log4j2.discardThreshold=DEBUG

In both solutions, I get this in TRACE console log, so it seems that the 
default configuration will be loaded:

INFO   | jvm 1| main| 2018/01/16 16:31:54.014 | 2018-01-16 16:31:53,913 
lidl-shop.com-startStop-4 DEBUG Configuration XmlConfiguration[location=stream 
(14883 bytes, unknown location)] initialized
INFO   | jvm 1| main| 2018/01/16 16:31:54.015 | 2018-01-16 16:31:53,914 
lidl-shop.com-startStop-4 DEBUG Starting configuration 
XmlConfiguration[location=stream (14883 bytes, unknown location)]
INFO   | jvm 1| main| 2018/01/16 16:31:54.015 | 2018-01-16 16:31:53,914 
lidl-shop.com-startStop-4 TRACE AsyncLoggerConfigDisruptor creating new 
disruptor for this configuration.
INFO   | jvm 1| main| 2018/01/16 16:31:54.015 | 2018-01-16 16:31:53,918 
lidl-shop.com-startStop-4 TRACE property AsyncLoggerConfig.WaitStrategy=TIMEOUT
INFO   | jvm 1| main| 2018/01/16 16:31:54.015 | 2018-01-16 16:31:53,961 
lidl-shop.com-startStop-4 DEBUG Starting AsyncLoggerConfig disruptor for this 
configuration with ringbufferSize=262144, 
waitStrategy=TimeoutBlockingWaitStrategy, exceptionHandler=org.apache.
logging.log4j.core.async.AsyncLoggerConfigDefaultExceptionHandler@66dd2d36...


Do you have any idea how can I configure these values?

Thanks and greetings,
Christian


On 04.01.18, 12:00, "Mikael Ståldal"  wrote:

 Or include a log4j2.component.properties file in classpath.

 
https://urldefense.proofpoint.com/v2/url?u=https-3A__logging.apache.org_log4j_2.x_manual_configuration.html-23System-5FProperties=DwIDaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=lVphsnNDcnbOx_3dfvRm2hixA_KjF0dVz1gFnj2INWI=iN5cxHt0_1hAWprylfkuZnVooj-yjTCceP8W5wRfd_M=


 On 2018-01-03 17:57, Matt Sicker wrote:
 > Those are system properties, but in log4j 2.10+, you can also use an
 > environment variable instead.
 >
 > On 3 January 2018 at 07:36, Fröstl, Christian <
 > christian.froe...@accenture.com> wrote:
 >
 >> Hi,
 >>
 >> Thanks, that clarifies it. (
 >> Is it possible to set the log4j2.asyncQueueFullPolicy   and
 >> log4j2.discardThreshold in the log4j2 xml configuration file or only as
 >> environment variable?
 >>
 >> Greetings,
 >> Christian
 >>
 >> On 03.01.18, 09:43, "Remko Popma"  wrote:
 >>
 >>  No, the default async queue full policy is to block and not drop 
any
 >> events. (This is different from Logback whose AsyncAppender is “lossy by
 >> default if 80% full”.) Log4j 2.10 will block until space becomes 
available
 >> in the buffer.
 >>
 >>  If you configure the DiscardingAsyncQueueFullPolicy (
 >> https://urldefense.proofpoint.com/v2/url?u=https-
 >> 3A__logging.apache.org_log4j_2.x_log4j-2Dcore_xref_org_
 >> apache_logging_log4j_core_async_DiscardingAsyncQueueFullPolicy
 >> .html=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=
 >> 37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=
 >> YD5JM4y8v44bpRXCOPKk3J0VIzak5IxqVyGe6fhkqAM=
 >> Ggo8IbBfo8JQkLyrBQY4HhEpgjf3Flb_EM3Zu5y_Do0=), events below the
 >> threshold are discarded when the queue is full. The default threshold is
 >> INFO, so trace and debug events are discarded, while INFO and higher 
events
 >> will not be discarded so the appender will have to block until space
 >> becomes available.
 >>
 >>  I hope this clarifies things. :-)
 >>
 >>  Remko
 >>
 >>  (Shameless plug) Every java main() method deserves
 >> https://urldefense.proofpoint.com/v2/url?u=http-3A__picocli.
 >> info=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=
 >> 37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=
 >> YD5JM4y8v44bpRXCOPKk3J0VIzak5IxqVyGe6fhkqAM=kCeGLk_Nd7hwvw13yJf3riq_
 >> 6WW8ixnCv5pTFMijt_U=
 >>
 >>  > On Jan 3, 2018, at 17:08, Fröstl, 

Re: [External] Re: Log4j2 Async logger fallback method

2018-01-16 Thread Fröstl , Christian
Hi Mikael,

Unfortunately it is not working in my setup to include the 
log4j2.component.properties file.
I am not possible at the moment to configure the another asyncQueueFullPolicy.

I tried the following ways: (we are using Hybris)

First Try:
1. Configure the asynclogger with xml configuration which resides in classpath
2. Add the following values to local.properties file
a. log4j2.config.xml=hybris-log4j2.xml
b. log4j2.asyncLoggerRingBufferSize=26
c. log4j2.asyncQueueFullPolicy=Discard
d. log4j2.discardThreshold=DEBUG

Second Try:
1. Configure the asynclogger with xml configuration which resides in classpath
2. Add the following values to log4j2.component.properties which resides in 
same classpath
a. log4j2.config.xml=hybris-log4j2.xml
b. log4j2.asyncLoggerRingBufferSize=26
c. log4j2.asyncQueueFullPolicy=Discard
d. log4j2.discardThreshold=DEBUG

In both solutions, I get this in TRACE console log, so it seems that the 
default configuration will be loaded:

INFO   | jvm 1| main| 2018/01/16 16:31:54.014 | 2018-01-16 16:31:53,913 
lidl-shop.com-startStop-4 DEBUG Configuration XmlConfiguration[location=stream 
(14883 bytes, unknown location)] initialized
INFO   | jvm 1| main| 2018/01/16 16:31:54.015 | 2018-01-16 16:31:53,914 
lidl-shop.com-startStop-4 DEBUG Starting configuration 
XmlConfiguration[location=stream (14883 bytes, unknown location)]
INFO   | jvm 1| main| 2018/01/16 16:31:54.015 | 2018-01-16 16:31:53,914 
lidl-shop.com-startStop-4 TRACE AsyncLoggerConfigDisruptor creating new 
disruptor for this configuration.
INFO   | jvm 1| main| 2018/01/16 16:31:54.015 | 2018-01-16 16:31:53,918 
lidl-shop.com-startStop-4 TRACE property AsyncLoggerConfig.WaitStrategy=TIMEOUT
INFO   | jvm 1| main| 2018/01/16 16:31:54.015 | 2018-01-16 16:31:53,961 
lidl-shop.com-startStop-4 DEBUG Starting AsyncLoggerConfig disruptor for this 
configuration with ringbufferSize=262144, 
waitStrategy=TimeoutBlockingWaitStrategy, exceptionHandler=org.apache.
logging.log4j.core.async.AsyncLoggerConfigDefaultExceptionHandler@66dd2d36...


Do you have any idea how can I configure these values?

Thanks and greetings,
Christian


On 04.01.18, 12:00, "Mikael Ståldal"  wrote:

Or include a log4j2.component.properties file in classpath.


https://urldefense.proofpoint.com/v2/url?u=https-3A__logging.apache.org_log4j_2.x_manual_configuration.html-23System-5FProperties=DwIDaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=lVphsnNDcnbOx_3dfvRm2hixA_KjF0dVz1gFnj2INWI=iN5cxHt0_1hAWprylfkuZnVooj-yjTCceP8W5wRfd_M=


On 2018-01-03 17:57, Matt Sicker wrote:
> Those are system properties, but in log4j 2.10+, you can also use an
> environment variable instead.
>
> On 3 January 2018 at 07:36, Fröstl, Christian <
> christian.froe...@accenture.com> wrote:
>
>> Hi,
>>
>> Thanks, that clarifies it. (
>> Is it possible to set the log4j2.asyncQueueFullPolicy   and
>> log4j2.discardThreshold in the log4j2 xml configuration file or only as
>> environment variable?
>>
>> Greetings,
>> Christian
>>
>> On 03.01.18, 09:43, "Remko Popma"  wrote:
>>
>>  No, the default async queue full policy is to block and not drop any
>> events. (This is different from Logback whose AsyncAppender is “lossy by
>> default if 80% full”.) Log4j 2.10 will block until space becomes 
available
>> in the buffer.
>>
>>  If you configure the DiscardingAsyncQueueFullPolicy (
>> https://urldefense.proofpoint.com/v2/url?u=https-
>> 3A__logging.apache.org_log4j_2.x_log4j-2Dcore_xref_org_
>> apache_logging_log4j_core_async_DiscardingAsyncQueueFullPolicy
>> .html=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=
>> 37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=
>> YD5JM4y8v44bpRXCOPKk3J0VIzak5IxqVyGe6fhkqAM=
>> Ggo8IbBfo8JQkLyrBQY4HhEpgjf3Flb_EM3Zu5y_Do0=), events below the
>> threshold are discarded when the queue is full. The default threshold is
>> INFO, so trace and debug events are discarded, while INFO and higher 
events
>> will not be discarded so the appender will have to block until space
>> becomes available.
>>
>>  I hope this clarifies things. :-)
>>
>>  Remko
>>
>>  (Shameless plug) Every java main() method deserves
>> https://urldefense.proofpoint.com/v2/url?u=http-3A__picocli.
>> info=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=
>> 37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=
>> YD5JM4y8v44bpRXCOPKk3J0VIzak5IxqVyGe6fhkqAM=kCeGLk_Nd7hwvw13yJf3riq_
>> 6WW8ixnCv5pTFMijt_U=
>>
>>  > On Jan 3, 2018, at 17:08, Fröstl, Christian <
>> christian.froe...@accenture.com> wrote:
>>  >
>>  > Hi,
>>  >
>>  > Thanks for your response.
>>  > Just one question to verify.
>>  > In the 

Re: [External] Re: Log4j2 Async logger fallback method

2018-01-04 Thread Mikael Ståldal

Or include a log4j2.component.properties file in classpath.

https://logging.apache.org/log4j/2.x/manual/configuration.html#System_Properties


On 2018-01-03 17:57, Matt Sicker wrote:

Those are system properties, but in log4j 2.10+, you can also use an
environment variable instead.

On 3 January 2018 at 07:36, Fröstl, Christian <
christian.froe...@accenture.com> wrote:


Hi,

Thanks, that clarifies it. (
Is it possible to set the log4j2.asyncQueueFullPolicy   and
log4j2.discardThreshold in the log4j2 xml configuration file or only as
environment variable?

Greetings,
Christian

On 03.01.18, 09:43, "Remko Popma"  wrote:

 No, the default async queue full policy is to block and not drop any
events. (This is different from Logback whose AsyncAppender is “lossy by
default if 80% full”.) Log4j 2.10 will block until space becomes available
in the buffer.

 If you configure the DiscardingAsyncQueueFullPolicy (
https://urldefense.proofpoint.com/v2/url?u=https-
3A__logging.apache.org_log4j_2.x_log4j-2Dcore_xref_org_
apache_logging_log4j_core_async_DiscardingAsyncQueueFullPolicy
.html=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=
37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=
YD5JM4y8v44bpRXCOPKk3J0VIzak5IxqVyGe6fhkqAM=
Ggo8IbBfo8JQkLyrBQY4HhEpgjf3Flb_EM3Zu5y_Do0=), events below the
threshold are discarded when the queue is full. The default threshold is
INFO, so trace and debug events are discarded, while INFO and higher events
will not be discarded so the appender will have to block until space
becomes available.

 I hope this clarifies things. :-)

 Remko

 (Shameless plug) Every java main() method deserves
https://urldefense.proofpoint.com/v2/url?u=http-3A__picocli.
info=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=
37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=
YD5JM4y8v44bpRXCOPKk3J0VIzak5IxqVyGe6fhkqAM=kCeGLk_Nd7hwvw13yJf3riq_
6WW8ixnCv5pTFMijt_U=

 > On Jan 3, 2018, at 17:08, Fröstl, Christian <
christian.froe...@accenture.com> wrote:
 >
 > Hi,
 >
 > Thanks for your response.
 > Just one question to verify.
 > In the default configuration, all events of level info, debug and
trace will be dropped, if the ringbuffer is full. For all other events the
application will block and if the ringbuffer has space again, the block
will release and the events will be written, right?
 > That means that only events of type Info, debug and trace could be
lost, but none of the higher levels like error, warn and severe, right?
 >
 > Kind regards,
 > Christian
 >
 > On 22.12.17, 01:53, "Remko Popma"  wrote:
 >
 >Yes by default the application thread will block until a slot
becomes available in the queue.
 >
 >Yes this is configurable: see https://urldefense.proofpoint.
com/v2/url?u=https-3A__github.com_apache_logging-2Dlog4j2_
blob_master_log4j-2Dcore_src_main_java_org_apache_logging_
log4j_core_async_AsyncQueueFullPolicyFactory.java=DwIFaQ=eIGjsITfXP_y-
DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=37nF0SnGtdjmcblOpYG7cKwaPDc1GW
o5GNDvnDLF8TE=hk-mti7hK6agTdNqpiQVl3gpA4ri4hrn2pxHf_8maIE=
QykinLq8RJFWq5YIigJq8wWizXFOxKy3DWeXTomCnaM=
 >
 >(Shameless plug) Every java main() method deserves
https://urldefense.proofpoint.com/v2/url?u=http-3A__picocli.
info=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=
37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=hk-
mti7hK6agTdNqpiQVl3gpA4ri4hrn2pxHf_8maIE=w_
w2x7qWvjFgf1pKLN7kb5Q534FwglDl16TI5-OArl4=
 >
 >> On Dec 20, 2017, at 2:03, Fröstl, Christian <
christian.froe...@accenture.com> wrote:
 >>
 >> Hi,
 >>
 >> I currently don’t find any documentation regarding the fallback
methods of the log4j2 async logger.
 >> What happens when the AsyncLogger.RingBufferSize is too small to
log all entries from a burst? Will the application fall back into sync
logging and slow down the application or will the new messages be dropped?
 >> Is this a configurable behaviour?
 >>
 >> Kind regards,
 >> Christian
 >>
 >>
 >> 
 >>
 >> This message is for the designated recipient only and may contain
privileged, proprietary, or otherwise private information. If you have
received it in error, please notify the sender immediately and delete the
original. Any other use of the email by you is prohibited.
 >
 >
 >
 > 
-
 > To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org
 > For additional commands, e-mail: log4j-user-h...@logging.apache.org
 >









-
To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org
For additional commands, e-mail: log4j-user-h...@logging.apache.org



Re: [External] Re: Log4j2 Async logger fallback method

2018-01-03 Thread Matt Sicker
Those are system properties, but in log4j 2.10+, you can also use an
environment variable instead.

On 3 January 2018 at 07:36, Fröstl, Christian <
christian.froe...@accenture.com> wrote:

> Hi,
>
> Thanks, that clarifies it. (
> Is it possible to set the log4j2.asyncQueueFullPolicy   and
> log4j2.discardThreshold in the log4j2 xml configuration file or only as
> environment variable?
>
> Greetings,
> Christian
>
> On 03.01.18, 09:43, "Remko Popma"  wrote:
>
> No, the default async queue full policy is to block and not drop any
> events. (This is different from Logback whose AsyncAppender is “lossy by
> default if 80% full”.) Log4j 2.10 will block until space becomes available
> in the buffer.
>
> If you configure the DiscardingAsyncQueueFullPolicy (
> https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__logging.apache.org_log4j_2.x_log4j-2Dcore_xref_org_
> apache_logging_log4j_core_async_DiscardingAsyncQueueFullPolicy
> .html=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=
> 37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=
> YD5JM4y8v44bpRXCOPKk3J0VIzak5IxqVyGe6fhkqAM=
> Ggo8IbBfo8JQkLyrBQY4HhEpgjf3Flb_EM3Zu5y_Do0=), events below the
> threshold are discarded when the queue is full. The default threshold is
> INFO, so trace and debug events are discarded, while INFO and higher events
> will not be discarded so the appender will have to block until space
> becomes available.
>
> I hope this clarifies things. :-)
>
> Remko
>
> (Shameless plug) Every java main() method deserves
> https://urldefense.proofpoint.com/v2/url?u=http-3A__picocli.
> info=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=
> 37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=
> YD5JM4y8v44bpRXCOPKk3J0VIzak5IxqVyGe6fhkqAM=kCeGLk_Nd7hwvw13yJf3riq_
> 6WW8ixnCv5pTFMijt_U=
>
> > On Jan 3, 2018, at 17:08, Fröstl, Christian <
> christian.froe...@accenture.com> wrote:
> >
> > Hi,
> >
> > Thanks for your response.
> > Just one question to verify.
> > In the default configuration, all events of level info, debug and
> trace will be dropped, if the ringbuffer is full. For all other events the
> application will block and if the ringbuffer has space again, the block
> will release and the events will be written, right?
> > That means that only events of type Info, debug and trace could be
> lost, but none of the higher levels like error, warn and severe, right?
> >
> > Kind regards,
> > Christian
> >
> > On 22.12.17, 01:53, "Remko Popma"  wrote:
> >
> >Yes by default the application thread will block until a slot
> becomes available in the queue.
> >
> >Yes this is configurable: see https://urldefense.proofpoint.
> com/v2/url?u=https-3A__github.com_apache_logging-2Dlog4j2_
> blob_master_log4j-2Dcore_src_main_java_org_apache_logging_
> log4j_core_async_AsyncQueueFullPolicyFactory.java=DwIFaQ=eIGjsITfXP_y-
> DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=37nF0SnGtdjmcblOpYG7cKwaPDc1GW
> o5GNDvnDLF8TE=hk-mti7hK6agTdNqpiQVl3gpA4ri4hrn2pxHf_8maIE=
> QykinLq8RJFWq5YIigJq8wWizXFOxKy3DWeXTomCnaM=
> >
> >(Shameless plug) Every java main() method deserves
> https://urldefense.proofpoint.com/v2/url?u=http-3A__picocli.
> info=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=
> 37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=hk-
> mti7hK6agTdNqpiQVl3gpA4ri4hrn2pxHf_8maIE=w_
> w2x7qWvjFgf1pKLN7kb5Q534FwglDl16TI5-OArl4=
> >
> >> On Dec 20, 2017, at 2:03, Fröstl, Christian <
> christian.froe...@accenture.com> wrote:
> >>
> >> Hi,
> >>
> >> I currently don’t find any documentation regarding the fallback
> methods of the log4j2 async logger.
> >> What happens when the AsyncLogger.RingBufferSize is too small to
> log all entries from a burst? Will the application fall back into sync
> logging and slow down the application or will the new messages be dropped?
> >> Is this a configurable behaviour?
> >>
> >> Kind regards,
> >> Christian
> >>
> >>
> >> 
> >>
> >> This message is for the designated recipient only and may contain
> privileged, proprietary, or otherwise private information. If you have
> received it in error, please notify the sender immediately and delete the
> original. Any other use of the email by you is prohibited.
> >
> >
> >
> > 
> -
> > To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org
> > For additional commands, e-mail: log4j-user-h...@logging.apache.org
> >
>
>
>


-- 
Matt Sicker 


Re: [External] Re: Log4j2 Async logger fallback method

2018-01-03 Thread Fröstl , Christian
Hi,

Thanks, that clarifies it. (
Is it possible to set the log4j2.asyncQueueFullPolicy   and 
log4j2.discardThreshold in the log4j2 xml configuration file or only as 
environment variable?

Greetings,
Christian

On 03.01.18, 09:43, "Remko Popma"  wrote:

No, the default async queue full policy is to block and not drop any 
events. (This is different from Logback whose AsyncAppender is “lossy by 
default if 80% full”.) Log4j 2.10 will block until space becomes available in 
the buffer. 

If you configure the DiscardingAsyncQueueFullPolicy 
(https://urldefense.proofpoint.com/v2/url?u=https-3A__logging.apache.org_log4j_2.x_log4j-2Dcore_xref_org_apache_logging_log4j_core_async_DiscardingAsyncQueueFullPolicy.html=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=YD5JM4y8v44bpRXCOPKk3J0VIzak5IxqVyGe6fhkqAM=Ggo8IbBfo8JQkLyrBQY4HhEpgjf3Flb_EM3Zu5y_Do0=),
 events below the threshold are discarded when the queue is full. The default 
threshold is INFO, so trace and debug events are discarded, while INFO and 
higher events will not be discarded so the appender will have to block until 
space becomes available. 

I hope this clarifies things. :-)

Remko 

(Shameless plug) Every java main() method deserves 
https://urldefense.proofpoint.com/v2/url?u=http-3A__picocli.info=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=YD5JM4y8v44bpRXCOPKk3J0VIzak5IxqVyGe6fhkqAM=kCeGLk_Nd7hwvw13yJf3riq_6WW8ixnCv5pTFMijt_U=

> On Jan 3, 2018, at 17:08, Fröstl, Christian 
 wrote:
> 
> Hi,
> 
> Thanks for your response.
> Just one question to verify.
> In the default configuration, all events of level info, debug and trace 
will be dropped, if the ringbuffer is full. For all other events the 
application will block and if the ringbuffer has space again, the block will 
release and the events will be written, right?
> That means that only events of type Info, debug and trace could be lost, 
but none of the higher levels like error, warn and severe, right?
> 
> Kind regards,
> Christian
> 
> On 22.12.17, 01:53, "Remko Popma"  wrote:
> 
>Yes by default the application thread will block until a slot becomes 
available in the queue. 
> 
>Yes this is configurable: see 
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_apache_logging-2Dlog4j2_blob_master_log4j-2Dcore_src_main_java_org_apache_logging_log4j_core_async_AsyncQueueFullPolicyFactory.java=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=hk-mti7hK6agTdNqpiQVl3gpA4ri4hrn2pxHf_8maIE=QykinLq8RJFWq5YIigJq8wWizXFOxKy3DWeXTomCnaM=
> 
>(Shameless plug) Every java main() method deserves 
https://urldefense.proofpoint.com/v2/url?u=http-3A__picocli.info=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=hk-mti7hK6agTdNqpiQVl3gpA4ri4hrn2pxHf_8maIE=w_w2x7qWvjFgf1pKLN7kb5Q534FwglDl16TI5-OArl4=
> 
>> On Dec 20, 2017, at 2:03, Fröstl, Christian 
 wrote:
>> 
>> Hi,
>> 
>> I currently don’t find any documentation regarding the fallback methods 
of the log4j2 async logger.
>> What happens when the AsyncLogger.RingBufferSize is too small to log all 
entries from a burst? Will the application fall back into sync logging and slow 
down the application or will the new messages be dropped?
>> Is this a configurable behaviour?
>> 
>> Kind regards,
>> Christian
>> 
>> 
>> 
>> 
>> This message is for the designated recipient only and may contain 
privileged, proprietary, or otherwise private information. If you have received 
it in error, please notify the sender immediately and delete the original. Any 
other use of the email by you is prohibited.
> 
> 
> 
> -
> To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org
> For additional commands, e-mail: log4j-user-h...@logging.apache.org
> 




Re: [External] Re: Log4j2 Async logger fallback method

2018-01-03 Thread Remko Popma
No, the default async queue full policy is to block and not drop any events. 
(This is different from Logback whose AsyncAppender is “lossy by default if 80% 
full”.) Log4j 2.10 will block until space becomes available in the buffer. 

If you configure the DiscardingAsyncQueueFullPolicy 
(https://logging.apache.org/log4j/2.x/log4j-core/xref/org/apache/logging/log4j/core/async/DiscardingAsyncQueueFullPolicy.html),
 events below the threshold are discarded when the queue is full. The default 
threshold is INFO, so trace and debug events are discarded, while INFO and 
higher events will not be discarded so the appender will have to block until 
space becomes available. 

I hope this clarifies things. :-)

Remko 

(Shameless plug) Every java main() method deserves http://picocli.info

> On Jan 3, 2018, at 17:08, Fröstl, Christian  
> wrote:
> 
> Hi,
> 
> Thanks for your response.
> Just one question to verify.
> In the default configuration, all events of level info, debug and trace will 
> be dropped, if the ringbuffer is full. For all other events the application 
> will block and if the ringbuffer has space again, the block will release and 
> the events will be written, right?
> That means that only events of type Info, debug and trace could be lost, but 
> none of the higher levels like error, warn and severe, right?
> 
> Kind regards,
> Christian
> 
> On 22.12.17, 01:53, "Remko Popma"  wrote:
> 
>Yes by default the application thread will block until a slot becomes 
> available in the queue. 
> 
>Yes this is configurable: see 
> https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_apache_logging-2Dlog4j2_blob_master_log4j-2Dcore_src_main_java_org_apache_logging_log4j_core_async_AsyncQueueFullPolicyFactory.java=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=hk-mti7hK6agTdNqpiQVl3gpA4ri4hrn2pxHf_8maIE=QykinLq8RJFWq5YIigJq8wWizXFOxKy3DWeXTomCnaM=
> 
>(Shameless plug) Every java main() method deserves 
> https://urldefense.proofpoint.com/v2/url?u=http-3A__picocli.info=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=hk-mti7hK6agTdNqpiQVl3gpA4ri4hrn2pxHf_8maIE=w_w2x7qWvjFgf1pKLN7kb5Q534FwglDl16TI5-OArl4=
> 
>> On Dec 20, 2017, at 2:03, Fröstl, Christian 
>>  wrote:
>> 
>> Hi,
>> 
>> I currently don’t find any documentation regarding the fallback methods of 
>> the log4j2 async logger.
>> What happens when the AsyncLogger.RingBufferSize is too small to log all 
>> entries from a burst? Will the application fall back into sync logging and 
>> slow down the application or will the new messages be dropped?
>> Is this a configurable behaviour?
>> 
>> Kind regards,
>> Christian
>> 
>> 
>> 
>> 
>> This message is for the designated recipient only and may contain 
>> privileged, proprietary, or otherwise private information. If you have 
>> received it in error, please notify the sender immediately and delete the 
>> original. Any other use of the email by you is prohibited.
> 
> 
> 
> -
> To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org
> For additional commands, e-mail: log4j-user-h...@logging.apache.org
> 


Re: [External] Re: Log4j2 Async logger fallback method

2018-01-03 Thread Fröstl , Christian
Hi,

Thanks for your response.
Just one question to verify.
In the default configuration, all events of level info, debug and trace will be 
dropped, if the ringbuffer is full. For all other events the application will 
block and if the ringbuffer has space again, the block will release and the 
events will be written, right?
That means that only events of type Info, debug and trace could be lost, but 
none of the higher levels like error, warn and severe, right?

Kind regards,
Christian

On 22.12.17, 01:53, "Remko Popma"  wrote:

Yes by default the application thread will block until a slot becomes 
available in the queue. 

Yes this is configurable: see 
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_apache_logging-2Dlog4j2_blob_master_log4j-2Dcore_src_main_java_org_apache_logging_log4j_core_async_AsyncQueueFullPolicyFactory.java=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=hk-mti7hK6agTdNqpiQVl3gpA4ri4hrn2pxHf_8maIE=QykinLq8RJFWq5YIigJq8wWizXFOxKy3DWeXTomCnaM=

(Shameless plug) Every java main() method deserves 
https://urldefense.proofpoint.com/v2/url?u=http-3A__picocli.info=DwIFaQ=eIGjsITfXP_y-DLLX0uEHXJvU8nOHrUK8IrwNKOtkVU=37nF0SnGtdjmcblOpYG7cKwaPDc1GWo5GNDvnDLF8TE=hk-mti7hK6agTdNqpiQVl3gpA4ri4hrn2pxHf_8maIE=w_w2x7qWvjFgf1pKLN7kb5Q534FwglDl16TI5-OArl4=

> On Dec 20, 2017, at 2:03, Fröstl, Christian 
 wrote:
> 
> Hi,
> 
> I currently don’t find any documentation regarding the fallback methods 
of the log4j2 async logger.
> What happens when the AsyncLogger.RingBufferSize is too small to log all 
entries from a burst? Will the application fall back into sync logging and slow 
down the application or will the new messages be dropped?
> Is this a configurable behaviour?
> 
> Kind regards,
> Christian
> 
> 
> 
> 
> This message is for the designated recipient only and may contain 
privileged, proprietary, or otherwise private information. If you have received 
it in error, please notify the sender immediately and delete the original. Any 
other use of the email by you is prohibited.



-
To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org
For additional commands, e-mail: log4j-user-h...@logging.apache.org