我正在尝试在Java应用程序(这是一个Web API)中设置一些第三方appender - appenders是作为依赖项添加的库。这是一个maven应用程序,这些库是Raven(通过Sentry)和Logentries。他们接受日志并提供GUI来查看它们。
本地工作正常 - 当在本地运行时,整个应用程序中的日志成功地显示在Logentries和Sentry中。在两种环境中都可以成功找到并解析配置。下面列出了为两种环境启动服务器时的<svg
width="155" height="600"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
version="1.2"
>
<rect x="0" y="0" width="155" height="600" style="fill:#00aa00" />
<path style="fill:#ffffff;" d="!!!new_d_attribute_content!!!" />
</svg>
配置和输出。
在暂存环境中,我看到了transform
的日志,所以这可能是类路径问题?有什么想法吗?
配置
log4j2.xml
启动服务器时暂存环境输出
CLASS_NOT_FOUND
启动服务器时本地环境输出
<?xml version="1.0" encoding="utf-8"?>
<configuration status="all">
<properties>
<property name="pattern">%d{hh:mm:ss.sss} [mode=${env:MODE}] [%t] %-5level %logger{36} - %msg%n</property>
</properties>
<appenders>
<console name="console" target="system_out">
<patternlayout pattern="${pattern}"/>
</console>
<raven name="sentry">
<dsn>[dsn_here]</dsn>
<patternlayout pattern="${pattern}"/>
<!--to turn down the noise-->
<!--<ThresholdFilter level="ERROR" onMatch="ACCEPT" onMismatch="DENY"/>-->
</raven>
<logentries name="le">
<token>[token_here]</token>
<patternlayout pattern="${pattern}"/>
<!--to turn down the noise-->
<!--<ThresholdFilter level="ERROR" onMatch="ACCEPT" onMismatch="DENY"/>-->
</logentries>
</appenders>
<loggers>
<root level="debug">
<appender-ref ref="le"/>
<appender-ref ref="sentry"/>
<appender-ref ref="console"/>
</root>
<logger name="com.amazonaws" level="debug" additivity="false">
<appender-ref ref="console"/>
</logger>
</loggers>
</configuration>
答案 0 :(得分:4)
在log4j2.xml顶部附近的某处尝试<Configuration packages="com.getsentry.raven.log4j2">
(发布此内容是为了完整性,但Brett在评论中回答了这一点)