Buffering in Console Appender?

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

Buffering in Console Appender?

Jaromir Hamala
Hello,

I wonder whether log4j could add (optional) buffering into the Console
Appender.
I believe it could be useful e.g. when the stdout is redirected to a file
(think of Maven Surefire), etc.

Would you accept a patch adding this?

Cheers,
Jaromir

--
“Perfection is achieved, not when there is nothing more to add, but when
there is nothing left to take away.”
Antoine de Saint Exupéry
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Buffering in Console Appender?

Matt Sicker
Sounds like an interesting use case. Patches are always welcome! Make sure
to file a JIRA ticket as well so we have something to refer to in the
changelog.

On 13 April 2017 at 09:29, Jaromir Hamala <[hidden email]> wrote:

> Hello,
>
> I wonder whether log4j could add (optional) buffering into the Console
> Appender.
> I believe it could be useful e.g. when the stdout is redirected to a file
> (think of Maven Surefire), etc.
>
> Would you accept a patch adding this?
>
> Cheers,
> Jaromir
>
> --
> “Perfection is achieved, not when there is nothing more to add, but when
> there is nothing left to take away.”
> Antoine de Saint Exupéry
>



--
Matt Sicker <[hidden email]>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Buffering in Console Appender?

Jaromir Hamala
Hello Matt,

thanks for you reply. I realized this is something what should
probably be handled inside Surefire and not inside Log4J.

I'll talk to Surefire folks.

Cheers,
Jaromir

On Thu, Apr 13, 2017 at 7:23 PM, Matt Sicker <[hidden email]> wrote:

> Sounds like an interesting use case. Patches are always welcome! Make sure
> to file a JIRA ticket as well so we have something to refer to in the
> changelog.
>
> On 13 April 2017 at 09:29, Jaromir Hamala <[hidden email]>
> wrote:
>
> > Hello,
> >
> > I wonder whether log4j could add (optional) buffering into the Console
> > Appender.
> > I believe it could be useful e.g. when the stdout is redirected to a file
> > (think of Maven Surefire), etc.
> >
> > Would you accept a patch adding this?
> >
> > Cheers,
> > Jaromir
> >
> > --
> > “Perfection is achieved, not when there is nothing more to add, but when
> > there is nothing left to take away.”
> > Antoine de Saint Exupéry
> >
>
>
>
> --
> Matt Sicker <[hidden email]>
>



--
“Perfection is achieved, not when there is nothing more to add, but when
there is nothing left to take away.”
Antoine de Saint Exupéry
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Buffering in Console Appender?

Mikael Ståldal-3
If you add this, don't forget to do some performance tests to verify that
it actually improves performance.

On Fri, Apr 14, 2017 at 1:33 PM, Jaromir Hamala <[hidden email]>
wrote:

> Hello Matt,
>
> thanks for you reply. I realized this is something what should
> probably be handled inside Surefire and not inside Log4J.
>
> I'll talk to Surefire folks.
>
> Cheers,
> Jaromir
>
> On Thu, Apr 13, 2017 at 7:23 PM, Matt Sicker <[hidden email]> wrote:
>
> > Sounds like an interesting use case. Patches are always welcome! Make
> sure
> > to file a JIRA ticket as well so we have something to refer to in the
> > changelog.
> >
> > On 13 April 2017 at 09:29, Jaromir Hamala <[hidden email]>
> > wrote:
> >
> > > Hello,
> > >
> > > I wonder whether log4j could add (optional) buffering into the Console
> > > Appender.
> > > I believe it could be useful e.g. when the stdout is redirected to a
> file
> > > (think of Maven Surefire), etc.
> > >
> > > Would you accept a patch adding this?
> > >
> > > Cheers,
> > > Jaromir
> > >
> > > --
> > > “Perfection is achieved, not when there is nothing more to add, but
> when
> > > there is nothing left to take away.”
> > > Antoine de Saint Exupéry
> > >
> >
> >
> >
> > --
> > Matt Sicker <[hidden email]>
> >
>
>
>
> --
> “Perfection is achieved, not when there is nothing more to add, but when
> there is nothing left to take away.”
> Antoine de Saint Exupéry
>



--
[image: MagineTV]

*Mikael Ståldal*
Senior software developer

*Magine TV*
[hidden email]
Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com

Privileged and/or Confidential Information may be contained in this
message. If you are not the addressee indicated in this message
(or responsible for delivery of the message to such a person), you may not
copy or deliver this message to anyone. In such case,
you should destroy this message and kindly notify the sender by reply
email.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Buffering in Console Appender?

Jaromir Hamala
Hello Mikael,

this fix was already merged
<https://git-wip-us.apache.org/repos/asf?p=maven-surefire.git;a=commit;h=9c0025ed53d70c06279fef6c0fc30a54aeeab27b>
into Surefire. It made a massive difference difference in our cases: as
confirmed by both data from Java Flight Recorder and real-world experience
(build stability).

I guess in our case the effect was amplified by the fact our Continuous
Integration runs on AWS where:
1. I/O is rather slow in general
2. EC2 instance have certain number of "burst I/O credits" <- when they are
exhausted then I/O becomes dog-slow.

Cheers,
Jaromir

On Tue, Apr 18, 2017 at 10:12 AM, Mikael Ståldal <[hidden email]>
wrote:

> If you add this, don't forget to do some performance tests to verify that
> it actually improves performance.
>
> On Fri, Apr 14, 2017 at 1:33 PM, Jaromir Hamala <[hidden email]>
> wrote:
>
> > Hello Matt,
> >
> > thanks for you reply. I realized this is something what should
> > probably be handled inside Surefire and not inside Log4J.
> >
> > I'll talk to Surefire folks.
> >
> > Cheers,
> > Jaromir
> >
> > On Thu, Apr 13, 2017 at 7:23 PM, Matt Sicker <[hidden email]> wrote:
> >
> > > Sounds like an interesting use case. Patches are always welcome! Make
> > sure
> > > to file a JIRA ticket as well so we have something to refer to in the
> > > changelog.
> > >
> > > On 13 April 2017 at 09:29, Jaromir Hamala <[hidden email]>
> > > wrote:
> > >
> > > > Hello,
> > > >
> > > > I wonder whether log4j could add (optional) buffering into the
> Console
> > > > Appender.
> > > > I believe it could be useful e.g. when the stdout is redirected to a
> > file
> > > > (think of Maven Surefire), etc.
> > > >
> > > > Would you accept a patch adding this?
> > > >
> > > > Cheers,
> > > > Jaromir
> > > >
> > > > --
> > > > “Perfection is achieved, not when there is nothing more to add, but
> > when
> > > > there is nothing left to take away.”
> > > > Antoine de Saint Exupéry
> > > >
> > >
> > >
> > >
> > > --
> > > Matt Sicker <[hidden email]>
> > >
> >
> >
> >
> > --
> > “Perfection is achieved, not when there is nothing more to add, but when
> > there is nothing left to take away.”
> > Antoine de Saint Exupéry
> >
>
>
>
> --
> [image: MagineTV]
>
> *Mikael Ståldal*
> Senior software developer
>
> *Magine TV*
> [hidden email]
> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>
> Privileged and/or Confidential Information may be contained in this
> message. If you are not the addressee indicated in this message
> (or responsible for delivery of the message to such a person), you may not
> copy or deliver this message to anyone. In such case,
> you should destroy this message and kindly notify the sender by reply
> email.
>



--
“Perfection is achieved, not when there is nothing more to add, but when
there is nothing left to take away.”
Antoine de Saint Exupéry
Loading...