Uploaded image for project: 'Log4php'
  1. Log4php
  2. LOG4PHP-48

Create SocketAppender Wireformat compatible to Chainsaw

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 2.0.0
    • None
    • Code
    • None

    Description

      Curt Arnold to Log4PHP Mailinglist
      I haven't looked at this, but I'm guessing that its wire format is not
      compatible with Chainsaw and log4j since they used their easiest
      implementation (Java serialization). log4cxx 0.9.7 had its own wire format,
      but it was dependent on the encoding, sizeof(int) and endianess so you had
      to match senders and receivers. In the current log4cxx, I've mimicked a
      valid Java serialization byte sequence and it can interact with Chainsaw and
      other tools that consume log4j serialized events.

      Christian Grobmeier wrote:
      Is there any chance to read something somewhere about this?

      Curt Arnold to Log4PHP Mailinglist
      Some dissection of the wire format appears in https://issues.apache.org/jira/browse/LOGCXX-7. The file names are the comparison files from the unit tests (https://svn.apache.org/repos/asf/logging/log4j/trunk/tests/witness/serialization).

      The Java serialization spec is here: http://java.sun.com/javase/6/docs/platform/serialization/spec/protocol.html. That plus the log4j source code defines the wire format that log4j writes and Chainsaw consumes.

      The applicable log4cxx code is:

      https://svn.apache.org/repos/asf/logging/log4cxx/trunk/src/main/cpp/objectoutputstream.cpp
      https://svn.apache.org/repos/asf/logging/log4cxx/trunk/src/main/cpp/loggingevent.cpp (the last two methods particularly)

      and to a lesser degree:

      https://svn.apache.org/repos/asf/logging/log4cxx/trunk/src/main/cpp/socketappenderskeleton.cpp
      https://svn.apache.org/repos/asf/logging/log4cxx/trunk/src/main/cpp/socketappender.cpp

      log4j and log4cxx both have serialization tests in their unit tests.

      Attachments

        Activity

          People

            Unassigned Unassigned
            grobmeier Christian Grobmeier
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated: