jboss.logmanager 和 logstash 的自定义格式化程序
Custom formatter for jboss.logmanager and logstash
我是 wildfly 日志记录的初学者,我正在尝试在 Jboss 生成的日志中添加更多信息,例如主机名(而不是 ip 地址)
我将 Wildfly 10 与 jboss-logmanager-ext 一起使用,后者将日志发送到 logstash 6.7.1,每个日志都在 docker 容器中
jboss-logmanager-ext-1.0.0.Alpha5.jar 使用 CLI 添加到 Wildfly 中,这里是 logstash 格式化程序行:
# Add the logstash formatter
/subsystem=logging/custom-formatter=logstash:add(class=org.jboss.logmanager.ext.formatters.LogstashFormatter,module=org.jboss.logmanager.ext)
实际上我的日志是这样的:
{
"host" => "172.17.0.3",
"port" => 46176,
"message" => "...",
"@version" => "1",
"@timestamp" => 2019-04-09T10:07:57.354Z
}
我想添加一个主机名字段,也许以后再添加其他东西,是否可以不添加新模块来执行自定义模式?使用 XML 文件或其他?我只找到像 Logstash/Gelf
这样的外部模块
您可以尝试添加 jboss.qualified.host.name
或 jboss.home.name
系统属性。
/subsystem=logging/custom-handler=logstash:write-attribute(value=meta-data, value={"qualifiedHost=${jboss.qualified.host.name}"})
我是 wildfly 日志记录的初学者,我正在尝试在 Jboss 生成的日志中添加更多信息,例如主机名(而不是 ip 地址)
我将 Wildfly 10 与 jboss-logmanager-ext 一起使用,后者将日志发送到 logstash 6.7.1,每个日志都在 docker 容器中
jboss-logmanager-ext-1.0.0.Alpha5.jar 使用 CLI 添加到 Wildfly 中,这里是 logstash 格式化程序行:
# Add the logstash formatter
/subsystem=logging/custom-formatter=logstash:add(class=org.jboss.logmanager.ext.formatters.LogstashFormatter,module=org.jboss.logmanager.ext)
实际上我的日志是这样的:
{
"host" => "172.17.0.3",
"port" => 46176,
"message" => "...",
"@version" => "1",
"@timestamp" => 2019-04-09T10:07:57.354Z
}
我想添加一个主机名字段,也许以后再添加其他东西,是否可以不添加新模块来执行自定义模式?使用 XML 文件或其他?我只找到像 Logstash/Gelf
这样的外部模块您可以尝试添加 jboss.qualified.host.name
或 jboss.home.name
系统属性。
/subsystem=logging/custom-handler=logstash:write-attribute(value=meta-data, value={"qualifiedHost=${jboss.qualified.host.name}"})