如何在属性文件中向 gelf logstash appender 添加静态字段? biz.paluch.logging
How to add a static field to gelf logstash appender in properties file? biz.paluch.logging
我正在使用 GELF-logstash appender 和 log4j2
作为日志附加程序,通过 logstash 将日志从我的应用程序发送到 ElasticSearch/Kibana。
在每条日志消息中,我想配置一个静态字段,即我的应用程序部署到的区域,它是从应用程序所在区域不同的环境变量中收集的运行。
我发现 XML 配置支持静态文字,如下所示:<Field name="fieldName1" literal="your literal value" />
https://logging.paluch.biz/examples/log4j-2.x.html
但如果可能的话,我想保留我的 log4j2.properties
基于文件的配置,但找不到在那里添加静态文字的文档。
是的,这是可能的。您可以使用预定义字段 facility
,或在 log4j2.properties
文件中定义任意数量的自定义静态字段:
# required configuration for GELF
appender.gelf.type = Gelf
appender.gelf.name = GELF
appender.gelf.host = ${sys:LOG_HOST}
appender.gelf.port = ${sys:LOG_PORT}
# pre-defined field facility
appender.gelf.facility = a_static_value
# custom static field using environment variable
appender.gelf.environment.type = Field
appender.gelf.environment.name = environment_logging_field_name
appender.gelf.environment.literal = ${sys:ENV_VAR_NAME}
# custom static field with static value
appender.gelf.secondfield.type = Field
appender.gelf.secondfield.name = fieldName
appender.gelf.secondfield.literal = your_value_here
我正在使用 GELF-logstash appender 和 log4j2
作为日志附加程序,通过 logstash 将日志从我的应用程序发送到 ElasticSearch/Kibana。
在每条日志消息中,我想配置一个静态字段,即我的应用程序部署到的区域,它是从应用程序所在区域不同的环境变量中收集的运行。
我发现 XML 配置支持静态文字,如下所示:<Field name="fieldName1" literal="your literal value" />
https://logging.paluch.biz/examples/log4j-2.x.html
但如果可能的话,我想保留我的 log4j2.properties
基于文件的配置,但找不到在那里添加静态文字的文档。
是的,这是可能的。您可以使用预定义字段 facility
,或在 log4j2.properties
文件中定义任意数量的自定义静态字段:
# required configuration for GELF
appender.gelf.type = Gelf
appender.gelf.name = GELF
appender.gelf.host = ${sys:LOG_HOST}
appender.gelf.port = ${sys:LOG_PORT}
# pre-defined field facility
appender.gelf.facility = a_static_value
# custom static field using environment variable
appender.gelf.environment.type = Field
appender.gelf.environment.name = environment_logging_field_name
appender.gelf.environment.literal = ${sys:ENV_VAR_NAME}
# custom static field with static value
appender.gelf.secondfield.type = Field
appender.gelf.secondfield.name = fieldName
appender.gelf.secondfield.literal = your_value_here