首页 > 解决方案 > 将 prometheus LOG4j conf 从 XML 转换为属性文件

问题描述

我在非常常见的基础上多次使用 LOG4j,主要是通过属性文件。虽然我对 XML 表单和不常见的功能(例如第三方库自定义日志记录)非常不熟悉。

prometheus log4j2配置是为xml conf文件写的,其实我也看不懂。虽然我可以这样使用它,但我想通过翻译成我喜欢的形式来理解它:作为属性文件。

<?xml version="1.0" encoding="UTF-8"?>
<Configuration packages="io.prometheus.client.log4j2">
    <Appenders>
        <Prometheus name="METRICS"/>
    </Appenders>
    <Loggers>
        <Root level="info">
            <AppenderRef ref="METRICS"/>
        </Root>
    </Loggers>
</Configuration>

属性文件:

name=PropertiesConfig
property.filename = /var/logs
appenders = console, METRICS?

appenders.METRICS?.
...?

rootLogger.appenderRefs = METRICS, console
...?

谁能帮我解决这个问题?

标签: log4j2properties-fileprometheus

解决方案


像这样:

log4j.rootLogger=CONSOLE,METRICS

log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.Threshold=DEBUG
log4j.appender.CONSOLE.Target=System.out
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=[%-5p][%d{yyyy-MM-dd HH\:mm\:ss,SSS}][%c] \:%m%n

log4j.appender.METRICS=io.prometheus.client.log4j.InstrumentedAppender

在 prometheus 中看到 log4j_appender_total 标志之后

转换参考:https ://www.journaldev.com/10698/log4j-properties-file-example


推荐阅读