[logback-dev] [JIRA] Issue Comment Edited: (LBCORE-128) Please support implementation of binary log files in RollingFileAppender/FileAppender

Maarten Bosteels (JIRA) noreply-jira at qos.ch
Fri Feb 19 09:47:34 CET 2010


    [ http://jira.qos.ch/browse/LBCORE-128?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=11545#action_11545 ] 

Maarten Bosteels edited comment on LBCORE-128 at 2/19/10 9:47 AM:
------------------------------------------------------------------

I think adding a separate setOutputStream method to the Encoder interface  is a good idea. 
It defines the contract much better than my initial proposal.

Ceki: "The more I think of it the more I am tempted to merge the concept of a layout into an encoder. After all a Layout is an encoder which encodes events in text"

I would keep the Layout interface.  It has a very simple contract, but different from the Encoder contract.
It's just like the difference between java.io.OutputStream and java.io.Writer : one for writing character streams and one for writing bytes. 





      was (Author: maartenb.bosteels):
    I think adding a separate setOutputStream method to the Encoder interface  is a good idea. 
It defines the contract much better than my initial proposal.

{quote}The more I think of it the more I am tempted to merge the concept of a layout into an encoder. After all a Layout is an encoder which encodes events in text.{quote}

I would keep the Layout interface.  It has a very simple contract, but different from the Encoder contract.
It's just like the difference between java.io.OutputStream and java.io.Writer : one for writing character streams and one for writing bytes. 




  
> 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: Ceki Gulcu
>
> 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

        


More information about the logback-dev mailing list