我正在使用带有 RemoteSyslogAppender 的 log4net 将日志发送到 logstash/elasticsearch。appender 会自动在消息前添加“<14>”,从而无法对堆栈跟踪进行分组。
在 log4net 发送的每条消息中,该数字都位于标识值之前。我尝试添加具有空值的“身份”标签,该标签已删除消息的“身份”,但 <14> 仍然存在。
<identity value=""/>
这是我当前的附加程序配置
<appender name="RemoteSyslogAppender" type="log4net.Appender.RemoteSyslogAppender" >
<identity value="somemessage" />
<param name="RemoteAddress" value="10.3.145.130" />
<param name="RemotePort" value="5140" />
<layout type="log4net.Layout.PatternLayout, log4net">
<param name="ConversionPattern" value="%-5level - %message%newline" />
</layout>
</appender>
使用这种配置,我仍然在“身份”值(一些消息)之前得到 <14>
"message" => "<14>somemessage: at System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize, Boolean checkHost)",
logstash 配置在这里无关紧要,但如果有帮助,我可以稍后包含它,我现在正在使用 {%GREEDYDATA},一旦我弄清楚如何对它们进行分组,我将着手正确解析它。
谢谢