For receiving log messages, though that's a separate feature.

On 4 May 2017 at 02:57, Mikael Ståldal <[email protected]> wrote:

> We are talking about layouts now, why would we need JSON deserialization?
>
> On Wed, May 3, 2017 at 9:49 PM, Matt Sicker <[email protected]> wrote:
>
> > I'll make a ticket for adding dependency-free JSON serialization and
> > deserialization (probably separate tickets).
> >
> > On 3 May 2017 at 12:57, Remko Popma <[email protected]> wrote:
> >
> > > Thank you for the clarification, Mikael!
> > > We may have to live with an external dependency initially until the
> JSON
> > > serializer that Matt mentioned is ready.
> > >
> > >
> > >
> > > On Wed, May 3, 2017 at 5:22 PM, Mikael Ståldal <
> > [email protected]>
> > > wrote:
> > >
> > > > GelfLayout currently lacks markers, context stack and detailed
> > structured
> > > > stacktrace (it has a string formatted stacktrace), thread id,
> location,
> > > > etc.
> > > >
> > > > The GELF standard i extensible, but only with key-value pairs with
> > string
> > > > or numeric values, it cannot be extended with an arbitrary JSON
> > > structure.
> > > >
> > > > GelfLayout currently have two Log4j specific extensions for
> loggerName
> > > and
> > > > threadName. We could add some more, but it is not feasible to store a
> > > > detailed structured stacktrace there.
> > > >
> > > > If we aim for complete reconstruction of a LogEvent, with all
> details,
> > > then
> > > > GELF is not a suitable format (and neither is Syslog/RFC5424).
> > > >
> > > > On Wed, May 3, 2017 at 3:44 AM, Matt Sicker <[email protected]>
> wrote:
> > > >
> > > > > GelfLayout follows the standard from Graylog, similar in idea to
> the
> > > > syslog
> > > > > standard.
> > > > >
> > > > > On 2 May 2017 at 19:34, Remko Popma <[email protected]> wrote:
> > > > >
> > > > > > That sounds good!
> > > > > > Essentially we want a layout that allows the receiver to
> > reconstruct
> > > > the
> > > > > > LogEvent (assuming the receiver has all required classes for
> custom
> > > > > > messages etc).
> > > > > >
> > > > > > Isn't GelfLayout quite close? What info does it leave out?
> > > > > >
> > > > > >
> > > > > >
> > > > > > (Shameless plug) Every java main() method deserves
> > > http://picocli.info
> > > > > >
> > > > > > > On May 3, 2017, at 0:44, Matt Sicker <[email protected]> wrote:
> > > > > > >
> > > > > > > I added some minimal code in the escape pattern converter for
> > > > handling
> > > > > > JSON
> > > > > > > string encoding. We can probably include a minimal JSON
> > > serialization
> > > > > > > "library" inside log4j-core which could also be included in the
> > > > general
> > > > > > > GC-free ecosystem we have going on.
> > > > > > >
> > > > > > >> On 2 May 2017 at 10:14, Mikael Ståldal <
> > [email protected]
> > > >
> > > > > > wrote:
> > > > > > >>
> > > > > > >> Oh, I did not think about that aspect. Both JsonLayout and a
> > > > potential
> > > > > > new
> > > > > > >> AvroLayout (will) have external dependency.
> > > > > > >>
> > > > > > >> Without external dependency, we currently have GelfLayout,
> > > > > PatternLayout
> > > > > > >> and RFC5424Layout.
> > > > > > >>
> > > > > > >> GelfLayout and RFC5424Layout would be useful in some cases,
> but
> > > they
> > > > > do
> > > > > > not
> > > > > > >> have all information present in SerializedLayout and
> JsonLayout.
> > > > > > >>
> > > > > > >> RFC5424Layout and PatternLayout can be configured to include
> all
> > > > > > >> information, but that's quite involved.
> > > > > > >>
> > > > > > >>> On Tue, May 2, 2017 at 4:11 PM, Remko Popma <
> > > [email protected]
> > > > >
> > > > > > wrote:
> > > > > > >>>
> > > > > > >>> What layout do we have available that does not require an
> > > external
> > > > > > >>> dependency?
> > > > > > >>>
> > > > > > >>> On Tue, May 2, 2017 at 8:38 PM, Mikael Ståldal <
> > > > > > >> [email protected]>
> > > > > > >>> wrote:
> > > > > > >>>
> > > > > > >>>> Given the inherent security problems with Java object
> > > > serialization
> > > > > > >>>> (highlighted by CVE-2017-5645), I do suggest that we
> deprecate
> > > > > > >>>> SerializedLayout and remove it as default for
> SocketAppender,
> > > and
> > > > > all
> > > > > > >>> other
> > > > > > >>>> appenders which currently have it as default. (We can still
> > keep
> > > > > > >>>> SerializedLayout, with a warning about security issues in
> > > > > > >> documentation,
> > > > > > >>>> but users will have to enable it explicitly.)
> > > > > > >>>>
> > > > > > >>>> Some people have missed the fact that you can configure
> > > > > SocketAppender
> > > > > > >>> with
> > > > > > >>>> another layout.
> > > > > > >>>>
> > > > > > >>>> I suggest we do this in the 2.9 release.
> > > > > > >>>>
> > > > > > >>>> I know this will break some existing configurations, but
> given
> > > the
> > > > > > >>> security
> > > > > > >>>> problems, I think that is a price we have to pay in this
> case.
> > > > > > >>>>
> > > > > > >>>> We have a JIRA ticket for a new Avro based binary layout:
> > > > > > >>>> https://issues.apache.org/jira/browse/LOG4J2-1871
> > > > > > >>>>
> > > > > > >>>> If we implement that in time for 2.9, we can recommend it
> as a
> > > > > > >>> replacement
> > > > > > >>>> for SerializedLayout. If not, we could recommend JsonLayout
> > > which
> > > > > > >> should
> > > > > > >>>> contain all necessary information.
> > > > > > >>>>
> > > > > > >>>> --
> > > > > > >>>> [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.
> > > > > > >>
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > --
> > > > > > > Matt Sicker <[email protected]>
> > > > > >
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Matt Sicker <[email protected]>
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > > [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.
> > > >
> > >
> >
> >
> >
> > --
> > Matt Sicker <[email protected]>
> >
>
>
>
> --
> [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.
>



-- 
Matt Sicker <[email protected]>

Reply via email to