log4j 将日志文件导入数据库

cpjpxq1n  于 2022-11-06  发布在  其他
关注(0)|答案(1)|浏览(117)

在mule CE 3.3.0版中,我有一个mule项目,调用它的URL是http://localhost:8086/mule?msg=Hello-World!!!
每次我调用它时,在mule服务器的日志文件中,它默认添加了一些行作为日志。
现在我想在mule中更改日志的类型?我想代替mule创建的日志文件,作为默认的mule创建一个表到数据库中,并将重要信息保存到其中。
实际上,我希望有一个表日志为我的项目,并在这个表中,我希望有客户的信息,如IP和...
这可能吗?我怎么能做到?

uttx8gqw

uttx8gqw1#

您可以使用Log4j数据库附加器将Mule ESB日志插入到数据库中。下面的代码片段用于执行相同的操作。

<appender name="DB" class="org.apache.log4j.jdbc.JDBCAppender">
   <param name="url" value="jdbc:mysql://localhost/DBNAME"/>
   <param name="driver" value="com.mysql.jdbc.Driver"/>
   <param name="user" value="user_id"/>
   <param name="password" value="password"/>
   <param name="sql" value="INSERT INTO LOGS VALUES('%level','%message','%X{muleMessage}','%X{payload}')"/>

   <layout class="org.apache.log4j.PatternLayout">
   </layout>
</appender>

<logger name="log4j.rootLogger" additivity="false">
   <level value="DEBUG"/>
   <appender-ref ref="DB"/>
</logger>

相关问题