Java 如何为Filebeat(WildFly 14)配置JBoss JsonFormatter

Java 如何为Filebeat(WildFly 14)配置JBoss JsonFormatter,java,logging,jboss,wildfly,filebeat,Java,Logging,Jboss,Wildfly,Filebeat,我让Filebeat从stdout拉日志。我希望确保我的日志以JSON的形式输出,以便能够正确解析它们 到目前为止,我发现: org.jboss.logmanager.formatters没有JSON格式化程序 有一个提供JsonFormatter类的。 我可以在logging.properties中使用它,方法如下: 我需要知道: 我是否缺少此配置的任何内容? 如何自定义JSON输出,即添加或删除字段? 野生苍蝇14中有一只。我不建议编辑logging.properties。以下CLI命令是配

我让Filebeat从stdout拉日志。我希望确保我的日志以JSON的形式输出,以便能够正确解析它们

到目前为止,我发现:

org.jboss.logmanager.formatters没有JSON格式化程序 有一个提供JsonFormatter类的。 我可以在logging.properties中使用它,方法如下: 我需要知道:

我是否缺少此配置的任何内容? 如何自定义JSON输出,即添加或删除字段? 野生苍蝇14中有一只。我不建议编辑logging.properties。以下CLI命令是配置json格式化程序的示例

注意元数据属性只是一个由逗号分隔的键/值对

如何自定义JSON输出,即添加或删除字段

您实际上只能添加元数据或更改字段名。但是您不能删除字段。

在WildFly 14中有一个。我不建议编辑logging.properties。以下CLI命令是配置json格式化程序的示例

注意元数据属性只是一个由逗号分隔的键/值对

如何自定义JSON输出,即添加或删除字段


您实际上只能添加元数据或更改字段名。但是,您不能删除字段。

如何添加自定义字段,例如httpRequest、“Service”,元数据字段?我添加了mata data=Service:Demo,然后它给了我错误,因为元数据字段是不允许的。我正在standalone.xml文件中进行更改---。您能指导我如何添加自定义文件以及元数据属性吗?最好使用CLI或web控制台进行配置更改。特别是对于日志记录,不建议编辑XML,因为在引导时也会使用logging.properties。谢谢James R,但是如果在某种情况下我想还原它,那么如何还原更改?sudo bash jboss-cli.sh-c/subsystem=logging/json formatter=json:addexception output type=formatted,pretty print=true,元数据={Service=demo}应该可以工作。请确保将CLI连接到正在运行的服务器,并在从命令行执行所有操作时引用该命令。如果不想使用CLI,也可以使用web控制台。最好不要直接编辑XML。可以这样做,但不理想。您可以查看。但您的命令类似于/subsystem=logging/logger=com.demo:addlevel=info如何添加自定义字段,例如httpRequest、'Service',元数据字段?我添加了mata data=Service:demo,然后它给了我错误,因为元数据字段是不允许的。我正在standalone.xml文件中进行更改---。您能指导我如何添加自定义文件以及元数据属性吗?最好使用CLI or web控制台进行配置更改。不建议编辑XML,尤其是在日志记录时,因为在引导时也会使用logging.properties。谢谢James r,但是如果我想恢复此属性,那么如何恢复更改?sudo bash jboss-cli.sh-c/subsystem=logging/json formatter=json:addexception output type=fo格式化,漂亮的打印=true,元数据={Service=demo}应该可以工作。请确保将CLI连接到正在运行的服务器,并在从命令行执行所有操作时引用该命令。如果不想使用CLI,也可以使用web控制台。最好不要直接编辑XML。可以这样做,但不理想。您可以查看。但您的命令类似于/subsystem=logging/logger=com.demo:addlevel=INFO
handler.CONSOLE=org.jboss.logmanager.handlers.ConsoleHandler
handler.CONSOLE.properties=autoFlush,target
handler.CONSOLE.autoFlush=true
handler.CONSOLE.formatter=JSON-FORMATTER
handler.CONSOLE.target=SYSTEM_OUT

formatter.JSON-FORMATTER=org.jboss.logmanager.ext.formatters.JSONFormatter
/subsystem=logging/json-formatter=json:add(exception-output-type=formatted, pretty-print=false, meta-data={label=value})
/subsystem=logging/console-handler=CONSOLE:write-attribute(name=named-formatter, value=json)