Also, I mentioned this before in another thread: https://www.jclarity.com/product/censum-free-trial/
This company will also give us licenses. It looks super useful for this scenario. On 11 March 2016 at 16:25, Matt Sicker <[email protected]> wrote: > YourKit gives us all licenses. We even mention them here: > http://logging.apache.org/log4j/2.x/thanks.html > > On 11 March 2016 at 16:21, Gary Gregory <[email protected]> wrote: > >> I have YourKit at work. Let me know what it is exactly you want to look >> at. Or you can get a free eval for a while. I'm not sure if we have a >> special deal with them for Apache or FOSS. Worth asking tho. >> >> G >> >> On Fri, Mar 11, 2016 at 1:56 PM, Remko Popma <[email protected]> >> wrote: >> >>> Mikael, >>> Your changes impact the GelfLayout class mostly, right? Any other class >>> impacted that you want me to take a look at? If not and all tests pass I'd >>> say just go ahead and merge into master. >>> >>> About testing whether it is allocation-free, there is this ticket >>> LOG4J2-1295 <https://issues.apache.org/jira/browse/LOG4J2-1295> that is >>> still open. >>> I'm thinking the Allocation Instrumenter ( >>> https://github.com/google/allocation-instrumenter) would serve our >>> purposes quite well here. >>> I just haven't had the bandwidth to look at this in more depth. It >>> probably involves running a test in a separate VM with the -agent startup >>> option. Not sure if we can do that with a normal log4j junit test or >>> whether the test would need to start a separate VM with the proper startup >>> options and then get that the result of that process via a file or >>> something... It would actually be really good if you or someone else could >>> make progress on that Jira, because I currently don't have the bandwidth to >>> look at it yet. >>> >>> >>> On Sat, Mar 12, 2016 at 1:33 AM, Mikael Ståldal < >>> [email protected]> wrote: >>> >>>> 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. >>>> >>> >>> >> >> >> -- >> E-Mail: [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 >> > > > > -- > Matt Sicker <[email protected]> > -- Matt Sicker <[email protected]>
