log4j2 - 将 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
...?
谁能帮我解决这个问题?
解决方案
像这样:
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
推荐阅读
- dynamics-crm - 在复制数据阶段 Azure 数据工厂(不使用 SQL)中添加具有现有列值的附加列
- sms - Twilio 卡住了为 SMS 设置 Twilio 可编程无线 SIM 卡
- node.js - 从 SecretsManager 检索 ppk 文件并传递给 ssh2-sftp-client
- python - 循环类型错误的 Alpha Vantage:字符串索引必须是整数
- python - 将 Django 部署到 Heroku 会导致服务器错误 (500)
- python - 带有构造函数的类,它剥离文本文件并将元素移动到列表
- php - xpath
查询
和 - python - 编译 Python 程序但也输出颜色?
- python - 基于 python 证书的身份验证中的 REST 请求,在 SOAPUI 中工作
- javascript - 类、颜色之间的平滑过渡 | .classList.toggle,JavaScript