我的应用程序中有许多不同的记录器(tomcat,javax,spring等)
org.apache.catalina. …
org.apache.tomcat. …
org.springframework. …
org.apache.coyote. …
javax.managment. …
....
是否可以通过NOT条件过滤Foregin-Logger? 例子
<logger name="^my.package" level="OFF" additivity="false"/>
最好是用正则表达式过滤Loggers。 这样做可以过滤所有NOT-MyPackages(包括我的包裹声明的一些前缀)
ADMIN.my.package. ...
PERFORMANCE.my.package. ….
当然,我可以在root-logger之前grep我的Logger。但是我将使用根查询器捕获所有未过滤的日志。
<logger name="^(\\w+\\.)?my.package" level="OFF" additivity="false"/>
<logger name="ADMIN" level="DEBUG" additivity="false">
<appender-ref ref="MyAdminLogFile" />
</logger>
<logger name="PERFORMANCE" level="DEBUG" additivity="false">
<appender-ref ref="MyPerformanceLogFile" />
</logger>
<root level="TRACE">
<appender-ref ref="myDefaultLogFile" />
</root>
谢谢