Is it OK to merge to master? Remko, can you help me to verify that it is properly allocation-free (when using <GelfLayout host="test" compressionType="OFF"/>)?
On Tue, Mar 8, 2016 at 5:36 PM, Mikael Ståldal <[email protected]> wrote: > I did it a bit differently, but now there are unit tests for > GelfLayout.encode(). > > On Tue, Mar 8, 2016 at 3:51 PM, Remko Popma <[email protected]> wrote: > >> I added some tests to PatternLayoutTest, please take a look. >> >> On Tue, Mar 8, 2016 at 11:56 PM, Mikael Ståldal < >> [email protected]> wrote: >> >>> I have done some work on this for GelfLayout. Please review branch >>> gelf-layout-gc-free >>> >>> Is there any convenient way to unit-test the encode method of a layout? >>> Do we do that for PatternLayout? >>> >>> On Wed, Feb 24, 2016 at 11:48 PM, Ralph Goers < >>> [email protected]> wrote: >>> >>>> I haven’t had 5 minutes to spare in 3 days. I will try to look at this >>>> tonight. >>>> >>>> Ralph >>>> >>>> On Feb 24, 2016, at 3:46 PM, Gary Gregory <[email protected]> >>>> wrote: >>>> >>>> On Tue, Feb 23, 2016 at 8:23 AM, Gary Gregory <[email protected]> >>>> wrote: >>>> >>>>> I see we now have: >>>>> >>>>> org.apache.logging.log4j.core.layout.AbstractStringLayout.Serializer2 >>>>> >>>>> Should we >>>>> deprecate >>>>> org.apache.logging.log4j.core.layout.AbstractStringLayout.Serializer >>>>> and reimplement everything in terms of Serializer2, even if objects are >>>>> allocated? >>>>> >>>> >>>> Thoughts on this? >>>> >>>> Gary >>>> >>>> >>>>> >>>>> Gary >>>>> >>>>> On Tue, Feb 23, 2016 at 7:59 AM, Remko Popma <[email protected]> >>>>> wrote: >>>>> >>>>>> Layout now extends Encoder so now it has this method: >>>>>> >>>>>> encode(LogEvent source, ByteBufferDestination destination) >>>>>> >>>>>> PatternLayout implements this method. It delegates the work of >>>>>> converting the StringBuilder to bytes and writing these bytes into the >>>>>> ByteBufferDestination to the TextEncoderHelper class. No objects are >>>>>> created during this conversion. >>>>>> >>>>>> The final piece is (Rolling)RandomAccessFileAppender, whose manager >>>>>> implements ByteBufferDestination. This appender calls the #encode() >>>>>> methos >>>>>> on the layout (other managers still call Layout#toByteArray). >>>>>> >>>>>> >>>>>> >>>>>> On Wed, Feb 24, 2016 at 12:47 AM, Mikael Ståldal < >>>>>> [email protected]> wrote: >>>>>> >>>>>>> I cannot really find it. >>>>>>> >>>>>>> On Tue, Feb 23, 2016 at 3:59 PM, Remko Popma <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>>> Yes, that was implemented in >>>>>>>> https://issues.apache.org/jira/browse/LOG4J2-1274. >>>>>>>> >>>>>>>> Please also see the description and discussion in the epic >>>>>>>> https://issues.apache.org/jira/browse/LOG4J2-1270. >>>>>>>> >>>>>>>> Sent from my iPhone >>>>>>>> >>>>>>>> On 2016/02/23, at 23:56, Mikael Ståldal <[email protected]> >>>>>>>> wrote: >>>>>>>> >>>>>>>> Do we have any way to convert a StringBuilder to a byte[], without >>>>>>>> any intermediate String? >>>>>>>> >>>>>>>> It seems like org.apache.logging.log4j.core.util.StringEncoder cannot >>>>>>>> do it. >>>>>>>> >>>>>>>> -- >>>>>>>> [image: MagineTV] >>>>>>>> >>>>>>>> *Mikael Ståldal* >>>>>>>> Senior software developer >>>>>>>> >>>>>>>> *Magine TV* >>>>>>>> [email protected] >>>>>>>> Grev Turegatan 3 | 114 46 Stockholm, Sweden | www.magine.com >>>>>>>> <http://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. >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> [image: MagineTV] >>>>>>> >>>>>>> *Mikael Ståldal* >>>>>>> Senior software developer >>>>>>> >>>>>>> *Magine TV* >>>>>>> [email protected] >>>>>>> Grev Turegatan 3 | 114 46 Stockholm, Sweden | www.magine.com >>>>>>> <http://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. >>>>>>> >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> E-Mail: [email protected] | [email protected] >>>>> <[email protected]> >>>>> Java Persistence with Hibernate, Second Edition >>>>> <http://www.manning.com/bauer3/> >>>>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> >>>>> Spring Batch in Action <http://www.manning.com/templier/> >>>>> Blog: http://garygregory.wordpress.com >>>>> Home: http://garygregory.com/ >>>>> Tweet! http://twitter.com/GaryGregory >>>>> >>>> >>>> >>>> >>>> -- >>>> E-Mail: [email protected] | [email protected] >>>> <[email protected]> >>>> Java Persistence with Hibernate, Second Edition >>>> <http://www.manning.com/bauer3/> >>>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> >>>> Spring Batch in Action <http://www.manning.com/templier/> >>>> Blog: http://garygregory.wordpress.com >>>> Home: http://garygregory.com/ >>>> Tweet! http://twitter.com/GaryGregory >>>> >>>> >>>> >>> >>> >>> -- >>> [image: MagineTV] >>> >>> *Mikael Ståldal* >>> Senior software developer >>> >>> *Magine TV* >>> [email protected] >>> 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. >>> >> >> > > > -- > [image: MagineTV] > > *Mikael Ståldal* > Senior software developer > > *Magine TV* > [email protected] > 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. > -- [image: MagineTV] *Mikael Ståldal* Senior software developer *Magine TV* [email protected] 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.
