java - 为什么 Sentry 不适用于我的 Log4j2
问题描述
嘿,我需要哨兵和 log4j2 方面的帮助。Sentry 对我来说很好,但是当我想使用 log4j2 时,不会向 sentry 发送错误。
否则哨兵在没有 log4j2 的情况下可以正常工作,有人可以帮帮我吗?
这是我的示例代码
public class Test {
private static final Logger logger = LogManager.getLogger(Test.class);
public static void main(String[] args) {
logger.error("test");
}
}
普通和简单的类
这是我的 log4j2.xml
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn" packages="org.apache.logging.log4j.core,io.sentry.log4j2">
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</Console>
<Sentry name="Sentry"
dsn="mydns"
minimumBreadcrumbLevel="DEBUG"
minimumEventLevel="WARN"
/>
</Appenders>
<Loggers>
<Root level="warn">
<AppenderRef ref="Sentry"/>
<AppenderRef ref="Console"/>
</Root>
</Loggers>
</Configuration>
我从哨兵文档中得到了 log4j2.xml
这是我的pom
<dependencies>
<dependency>
<groupId>io.sentry</groupId>
<artifactId>sentry-log4j2</artifactId>
<version>4.3.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j -->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.13.0</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.13.0</version>
</dependency>
</dependencies>
解决方案
推荐阅读
- java - Java中多维ArrayList中的索引
- angular - 将故事书组件导入另一个 Angular 项目
- spring-boot - Spring Boot:无法登录 h2 控制台
- javascript - React 高阶组件,即修改其中包装组件的输入元素
- vue.js - 在 vue 应用程序中安装“@sencha/ext-web-components”时出现此错误?
- sql - PL/SQL 循环遍历表类型并扩展
- python - 严格来说没有其他用户输入,而不是 Python 的这 4 个预定义选项
- c# - 在 Web 应用程序中跨不同机器唯一标识文件
- flutter - 如何修复 Top Flutter 中的布局
- android - 片段如何通过 ViewModelInject 将 bundle 传递给 viewModel