使用 Byte_order_mark <feff> 打印 Wildfly 10 Sys-log-handler
Wildfly 10 Sys-log-handler printing with Byte_order_mark <feff>
我在 WildFly-10 Standalone.xml 中配置了一个系统日志处理程序,如下所示
<syslog-handler name="mysyslog">
<level name="INFO"/>
<hostname value="localhost"/>
<app-name value="myappserver"/>
<facility value="local-use-7"/>
</syslog-handler>
我在 rsyslog.d 中添加了规则,因为
if $programname == 'myappserver' then /tmp/mysyslog.log
当我检查 mysyslog 文件时,我可以看到 个字符
这些字符在发送到 rsyslog 之前由 Wildfly 本身附加。
你能告诉我如何从我的日志中删除这些吗
我参考了这个 link https://en.wikipedia.org/wiki/Byte_order_mark 它表明这些是 BOM 字符
根据 RFC 5424 spec that the BOM is added. A simple workaround is to override the encoding. Unfortunately the standard syslog server management resource doesn't allow for an encoding to be set. There is an issue filed 解决此问题。
然而,您可以使用 custom-handler
覆盖它并使用 US-ASCII
之类的编码来更改将删除 BOM 的编码。以下 CLI 命令应创建一个类似于您配置的系统日志处理程序。
/subsystem=logging/pattern-formatter=syslog-pattern:add(pattern="(%t) %s%e")
/subsystem=logging/custom-handler=syslog:add(module=org.jboss.logmanager, class=org.jboss.logmanager.handlers.SyslogHandler, named-formatter=syslog-pattern, level=INFO, properties={hostname=localhost, appName="myappserver", facility="LOCAL_USE_7", encoding="US-ASCII", syslogType=RFC5424})
我在 WildFly-10 Standalone.xml 中配置了一个系统日志处理程序,如下所示
<syslog-handler name="mysyslog">
<level name="INFO"/>
<hostname value="localhost"/>
<app-name value="myappserver"/>
<facility value="local-use-7"/>
</syslog-handler>
我在 rsyslog.d 中添加了规则,因为
if $programname == 'myappserver' then /tmp/mysyslog.log
当我检查 mysyslog 文件时,我可以看到
这些字符在发送到 rsyslog 之前由 Wildfly 本身附加。
你能告诉我如何从我的日志中删除这些吗
我参考了这个 link https://en.wikipedia.org/wiki/Byte_order_mark 它表明这些是 BOM 字符
根据 RFC 5424 spec that the BOM is added. A simple workaround is to override the encoding. Unfortunately the standard syslog server management resource doesn't allow for an encoding to be set. There is an issue filed 解决此问题。
然而,您可以使用 custom-handler
覆盖它并使用 US-ASCII
之类的编码来更改将删除 BOM 的编码。以下 CLI 命令应创建一个类似于您配置的系统日志处理程序。
/subsystem=logging/pattern-formatter=syslog-pattern:add(pattern="(%t) %s%e")
/subsystem=logging/custom-handler=syslog:add(module=org.jboss.logmanager, class=org.jboss.logmanager.handlers.SyslogHandler, named-formatter=syslog-pattern, level=INFO, properties={hostname=localhost, appName="myappserver", facility="LOCAL_USE_7", encoding="US-ASCII", syslogType=RFC5424})