java - 如何将 jasper 报告日志记录到单独的日志文件中?

标签 java logging jasper-reports log4j

我是 JasperReport 和 Log4j 的新手,现在我必须将与 jasper 报告相关的所有日志消息记录到新的日志文件中。截至目前,它写入日志文件和控制台位,我希望它仅记录在单独的日志文件上。如何才能实现这一目标。

这是我的 log4j.xml 文件。

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration debug="true" xmlns:log4j='http://jakarta.apache.org/log4j/'>

<appender name="console" class="org.apache.log4j.ConsoleAppender">
    <layout class="org.apache.log4j.PatternLayout">
    <param name="ConversionPattern" value="[%d{dd-MM-yyyy HH:mm:ss}] [%c{1}] %-5p :%L - %m%n" />
    </layout>
</appender>

<appender name="ASYNC" class="org.apache.log4j.AsyncAppender">
    <appender-ref ref="console" />
    <appender-ref ref="file" />
</appender>

<appender name="file" class="org.apache.log4j.RollingFileAppender">
    <param name="append" value="true" />
    <param name="maxFileSize" value="10MB" />
    <param name="maxBackupIndex" value="10" />
    <param name="file" value="${catalina.home}/logs/ITS_Server.log" />
    <layout class="org.apache.log4j.PatternLayout">
    <param name="ConversionPattern" value="[%d{dd-MM-yyyy HH:mm:ss}] [%c{1}] %-5p:%L - %m%n" />
    </layout>
</appender>

<category name="org.hibernate">
    <priority value="DEBUG" />
</category>

<category name="java.sql">
    <priority value="debug" />
</category>

<root>
    <level value="DEBUG" />

    <appender-ref ref="file" />


</root> -->

</log4j:configuration>

请任何人都可以帮助我。

最佳答案

您必须定义一个新的附加程序:

<appender name="jasper" class="org.apache.log4j.RollingFileAppender">
    <param name="append" value="true" />
    <param name="maxFileSize" value="10MB" />
    <param name="maxBackupIndex" value="10" />
    <param name="file" value="${catalina.home}/logs/jasperReports.log" />
    <layout class="org.apache.log4j.PatternLayout">
    <param name="ConversionPattern" value="[%d{dd-MM-yyyy HH:mm:ss}] [%c{1}] %-5p:%L - %m%n" />
    </layout>
</appender>

还有一个新类别,以 apender 作为引用:

<category additivity="false"  name="net.sf.jasperreports">
    <priority value="debug" />
    <appender-ref ref="jasper"/>
</category>

关于java - 如何将 jasper 报告日志记录到单独的日志文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29789692/

相关文章:

java - 找出数组类型来比较java中的数组

python - 在带有 Connexion 的 Python Flask 应用程序中使用哪个记录器

java - logback - 没有行尾分隔符

java - 使用 ireport 生成 Excel 文件的密码保护

parameters - 将 like 与 jasper 参数一起使用

java - 查找元素所在的 JFrame

java - GridBagLayout 的奇怪行为,部分忽略了网格位置

java:递增构造函数中的id以显示在main中

java - 如何减少每个类中的 Logger.getLogger(...) 样板

mysql - iReport 说 'The document has no pages'