Henry K. created LOG4NET-523: -------------------------------- Summary: .NET message parameter corrupted if dynamic-string Key: LOG4NET-523 URL: https://issues.apache.org/jira/browse/LOG4NET-523 Project: Log4net Issue Type: Bug Reporter: Henry K. Priority: Trivial
In .NET C# log4net creates line to log file, but line gets corrupted after attempting to enter message data with type that is {code}dynamic { string } {code} More details: {noformat} conversionPattern value="%date [%thread] %-5level %logger::%sourceClass - %message%newline" /> {noformat} -- in place where [ %message ] -is found, everything after that will be removed. Applying next log line to same row. Example: {code:java} // extra conversion is unnecessary, serializer method should return string... var data = Convert.ToString(JsonConvert.Serialize(dynamicData)); // data = type[ dynamic{string} ] log.Debug(data); {code} {noformat} 2016-08-11 23:00:00,000 [69] DEBUG MyNamespace::RootClass.Subclass.Method() - Some debug data 2016-08-11 23:00:09,999 [69] DEBUG MyNamespace::RootClass.Subclass.Method() - Some debug data ... {noformat} --> {noformat} 2016-08-11 23:00:00,000 [69] DEBUG MyNamespace::2016-08-11 23:00:09,999 [69] DEBUG MyNamespace::RootClass.Subclass.Method() - {some dynamic data converted to JSON string} ... {noformat} This is of course "fixable" or possible to round it by casting that data type to string: {code:java} // extra conversion is unnecessary, serializer method should return string... // data = type[ string ] var data = (string)Convert.ToString(JsonConvert.Serialize(dynamicData)); log.Debug(data); {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)