java Log4j在一个webapp中提供多种配置
我有一个网络应用,我正在尝试使用它。我的网络应用中有不同的服务。每一个都提供一个独特的功能,但访问相同的数据库。每个服务都与数据库通信,添加或更新内容,GUI显示输出。 我正在与Spring、maven合作,并使用mybatis进行SQL映射。我正在将所有内容打包到war文件中,并将其部署到Tomcat上
我希望web应用的每个组件都记录它执行的SQL查询。我使用log4j作为日志引擎。如何使每个组件使用不同的log4j配置?jdbcdslog能帮我存储一些与查询相关的元数据吗
基本上,我希望将数据记录到每个组件的单独日志文件中。log4j只从组件中获取它加载的最后一个配置文件。所有其他配置都没有用。所以我试图找到一种方法来分离每个组件的日志数据
Web-App
Component1
Component2
Component3
Component4
# 1 楼答案
您需要为每个服务包定义不同的log4j appender。下面是如何在log4j中实现这一点。xml:
附录1
附录2
如果使用log4j的属性文件配置,可以对属性文件使用相同的方法