首页 > 解决方案 > 如何使用 Log4j 将日志消息计数发送到 Graphite?

问题描述

我正在尝试使用此模块https://metrics.dropwizard.io/4.1.2/manual/log4j.html,以便在 Graphite 中有计数器来记录所记录的警告和错误消息的数量。

无论如何,当我添加所需的依赖项并根据文档https://metrics.dropwizard.io/4.1.2/manual/log4j.html使用规定的 log4j 配置时,当我在本地运行我的应用程序时出现以下错误:

2020-03-31 11:34:28,706 main ERROR Appenders contains an invalid element or attribute "MetricsAppender"
2020-03-31 11:34:28,716 main ERROR Unable to locate appender "metricsAppender" for logger config "root"

我使用以下配置:

<Configuration status="INFO" name="log4j2-config" packages="com.codahale.metrics.log4j2">
<Appenders>
    <MetricsAppender name="metrics" registryName="shared-metrics-registry"/>
</Appenders>
<Loggers>
    <Root level="INFO">
        <AppenderRef ref="metrics" />
    </Root>
</Loggers>
</Configuration>

我在我的 POM 中添加了 metrics-log4j 依赖项,如下所示:

<dependency>
    <groupId>io.dropwizard.metrics</groupId>
    <artifactId>metrics-log4j</artifactId>
    <version>3.2.6</version>
</dependency>
<dependency>

我的工作环境:Spring Boot 2 + Maven + Java 11

如何克服这些错误?

标签: javalogginglog4j2

解决方案


您正在使用 Log4J 2,但您使用的指标库适用于 Log4J 1。尝试对 Log4J 2 使用 Dropwizard 指标


推荐阅读