You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4php-dev@logging.apache.org by "Ivan Habunek (Updated) (JIRA)" <ji...@apache.org> on 2011/12/08 16:13:40 UTC

[jira] [Updated] (LOG4PHP-48) Create SocketAppender Wireformat compatible to Chainsaw

     [ https://issues.apache.org/jira/browse/LOG4PHP-48?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ivan Habunek updated LOG4PHP-48:
--------------------------------

    Fix Version/s:     (was: 2.2)

Not planned for 2.2
                
> Create SocketAppender Wireformat compatible to Chainsaw
> -------------------------------------------------------
>
>                 Key: LOG4PHP-48
>                 URL: https://issues.apache.org/jira/browse/LOG4PHP-48
>             Project: Log4php
>          Issue Type: Improvement
>          Components: Code
>    Affects Versions: 2.0
>            Reporter: Christian Grobmeier
>
> 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.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira