Dear Arjan,
we further investigated your issue. It seems like this behaivor is not that much of a bug in the parsing of messages, but caused by the ambigous nature of pattern formated messages.
In pattern formated messages every line represents a message, as long as they are not not explicitly specified to span accross multiple lines, e.g. with the pattern
${longdate} ${newline} ${message}. In this case a message always consists of one line of date and one line of message.
Yet in your case the line breaks happen within a field, which can not be specified in the layout. Also this could not be definined without further problems regarding ambiguity: What will happen to messages, that do not log multiple lines etc?
If the messages start with a date and Log4View cannot parse the start of a line into a valid DateTime, the current line will be treated as faulty and attatched to the previous line. This is why multiline messages work just fine when they start with their time.
You could replace the line breaks within your messages by using the following Layout renderer:
https://github.com/NLog/NLog/wiki/Replace-NewLines-Layout-RendererAlternatively we just released a new beta version with a workaround included. With this version you can define new messages by letting them start with a prefix. This prefix will work even when messages span over multiple lines.
For example if you add a | to the start of every message you can use the following pattern:
| ${threadid} ${longdate} ${uppercase:${level}}: ${message}The messages have to look like this in your logfile:
| 10 2016-09-27 11:11:31.5372 DEBUG: {Something.Something.Something}
Type: AType
VendorId: 0
ProductId: 0
IsSpoofDetectionSupported: True
SpoofDetection: False
Owner: { }Yours sincerely
Philipp Lauchner
PROSA GmbH Development & Support