
[ http://jira.qos.ch/browse/LBCORE-128?page=com.atlassian.jira.plugin.system.i... ] Joern Huxhorn commented on LBCORE-128: -------------------------------------- One of the benefits is that logs can be compressed while they are created, not just while rotating them. (Yes, we have really huge production logs - and we actually need them ;)) Another point is that simply serializing log events is likely performing better (depending on the serialization mechanism, obviously) than creating human-readable files and does not have to involve any loss of information. I can decide about the human-readable format when I want to read/evaluate/work with the logs, not while writing them. What I'd like to do is create a simple command-line app that just prints such a file in a human-readable format that is specified as an argument. It would also be possible to transform it into LOG4J XML, Lilith XML, HTML or whatever you'd like to do/need. I'd simply implement a matching Lilith file appender that produces the same files that are used by Lilith - but that's only my use-case. Another benefit, at least in case of my implementation, is that I only require a header and no footer. This removes the problem of malformed XML or HTML caused by missing closing tags, for example.
Please support implementation of binary log files in RollingFileAppender/FileAppender -------------------------------------------------------------------------------------
Key: LBCORE-128 URL: http://jira.qos.ch/browse/LBCORE-128 Project: logback-core Issue Type: Improvement Components: Appender Affects Versions: 0.9.17 Reporter: Joern Huxhorn Assignee: Logback dev list
This was discussed briefly at http://marc.info/?l=logback-dev&m=124905434331308&w=2 and I forgot to file a ticket about this. Currently, RandomFileAppender => FileAppender => WriterAppender is using the following method in WriterAppender to actually write the data: protected void writerWrite(String s, boolean flush) throws IOException Please add an additional method like protected void writerWrite(byte[] bytes, boolean flush) throws IOException to write to the underlying stream directly. writerWrite(String, boolean) could call that method after performing the transformation internally, making this change transparent for the rest of the implementation. Using a binary format for logfiles could have tremendous performance impact as can be seen here: http://sourceforge.net/apps/trac/lilith/wiki/SerializationPerformance
-- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.qos.ch/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira