[logback-dev] [JIRA] Created: (LBCLASSIC-201) Preferably don't call toString() on objects in arguments array

Donald Graham (JIRA) noreply-jira at qos.ch
Tue Apr 6 09:25:16 CEST 2010


Preferably don't call toString() on objects in arguments array
--------------------------------------------------------------

                 Key: LBCLASSIC-201
                 URL: http://jira.qos.ch/browse/LBCLASSIC-201
             Project: logback-classic
          Issue Type: Improvement
          Components: appender
    Affects Versions: 0.9.19
         Environment: Software platform
            Reporter: Donald Graham
            Assignee: Logback dev list


I'm attempting to use a SocketAppender to send log events over the network to a custom appender hosted by SimpleSocketServer.  My custom appender needs to work with my arguments as objects, rather than strings.  I noticed that the string representations of my arguments were being passed across the network, and traced through to the code shown below (from ch.qos.logback.classic.spi.LoggingEventVO).  Would you consider sending the object's serialized form instead (assuming the object is serializable)? 

  private void writeObject(ObjectOutputStream out) throws IOException {
    out.defaultWriteObject();
    out.writeInt(level.levelInt);
    if (argumentArray != null) {
      int len = argumentArray.length;
      out.writeInt(len);
      for (int i = 0; i < argumentArray.length; i++) {
        if (argumentArray[i] != null) {
          out.writeObject(argumentArray[i].toString());
        } else {
          out.writeObject(NULL_ARGUMENT_ARRAY_ELEMENT);
        }
      }
    } else {
      out.writeInt(NULL_ARGUMENT_ARRAY);
    }

  }

-- 
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