我有以下日志记录 xml 配置
<Configuration>
<Appenders>
<Console name="CONSOLE" target="SYSTEM_OUT">
<PatternLayout pattern="{some pattern}"/>
</Console>
<Raven name="Sentry">
<dsn>
https://{public key}@app.getsentry.com/65532?options
</dsn>
<tags>
tag1:value1,tag2:value2
</tags>
</Raven>
<Async name="ASYNC">
<AppenderRef ref="CONSOLE" level="${sys:console_log_level}"/>
<AppenderRef ref="Sentry"/>
</Async>
</Appenders>
<Root>
<AppenderRef ref="ASYNC"/>
</Root>
</Configuration>
当我的记录器初始化时,我收到以下异常>
ERROR Unable to invoke factory method in class class net.kencochrane.raven.log4j2.SentryAppender for element Raven.>
ERROR appenders Appenders has no parameter that matches element Raven>
ERROR No appender named Sentry was configured>
我正在 weblogic 上运行我的应用程序。
任何有关如何让 Sentry 工作的帮助将不胜感激。
最佳答案
出现此错误的原因是您的插件中没有使用 @PluginFactory 注释的静态方法,或者调用该方法时出现问题。查看代码,您应该已经获得了堆栈跟踪以及“无法调用”方法。您使用的 Log4j 版本是什么?
我建议将 status="debug"添加到配置元素,并查看是否有任何调试消息有助于识别问题。如果这没有帮助,请提供您的插件的源代码或至少提供工厂方法。
关于java - 配置 Sentry 以使用 log4j2 进行日志记录时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35129645/