最新历史版本 :fanruan.log优化 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

报表服务器版本
11.0

1.2 应用场景

为方便阅读,日志记录模板名称;为减少磁盘占用,日志进行压缩。帆软提供日志文件定时压缩功能。

注:每日零点压缩前一天的日志。

注:该效果不支持移动端。

10.0、JAR 包为 2019-05-20 之前,不支持日志文件定时压缩功能。

10.0、JAR 包为 2019-05-20 及之后:

1)若为全新安装的工程:直接支持日志文件定时压缩功能

2)若使用升级工具升级从低版本升级到该版本之后:直接支持日志文件定时压缩功能

3)若使用JAR包替换实现从低版本升级到该版本之后:需要删除%FR_HOME%\webapps\webroot\WEB-INF\config\log4j.properties文件实现日志文件定时压缩功能。

1.3 功能简介

本文主要介绍,对于需要自定义 log4j 配置需求的用户,如何对 log4j配置文件 进行配置,确保触发日志文件定时压缩功能。

2. 下载配置文件编辑

根据版本不同,log4j配置文件不同,请根据工程版本,下载适合自己的基础配置文件。建议在提供的配置文件基础上进行修改。

修改完毕后请将文件存放于%FR_HOME%\webapps\webroot\WEB-INF\config文件夹下。重启报表服务,修改日志级别,系统将触发读取 log4j 配置文件。

报表服务器版本
配置文件
FineReport11.0,且JAR 包为 2021-11-15 及之后点击下载并解压:log4j2.zip

FineReport11.0,且JAR 包为 2021-11-15 之前

点击下载并解压:log4j.zip
FineReport10.0,且JAR 包为 2019-05-20 及之后
FineReport10.0,且JAR 包为 2019-05-20 之前不支持日志文件定时压缩功能

log4j2.xml文件内容如下:

<Configuration status="WARN">
    <Appenders>
<!--        quartz日志文件输出,定义了文件路径和归档日志文件的文件名模式-->
        <RollingFile name="quartz" fileName="${sys:LOG_HOME}/../logs/quartz/quartz.log" filePattern="${sys:LOG_HOME}/../logs/quartz/quartz.log.%d{yyyy-MM-dd}.gz">
<!--            日志格式-->
            <PatternLayout pattern="%d{yyyy/MM/dd HH:mm:ss} %t %p [%c] %m%n"/>
            <Policies>
<!--                基于时间的触发策略,modulate-指示是否应调整间隔以使下一次滚动发生在间隔边界上 interval-滚动间隔,结合filePattern的%d的最小单位生效 -->
                <TimeBasedTriggeringPolicy modulate="true" interval="1"/>
            </Policies>
            <DefaultRolloverStrategy>
<!--                滚动删除策略,basePath-扫描要删除的文件的基本路径 maxDepth-扫描目录的最大深度 -->
                <Delete basePath="${sys:LOG_HOME}/../logs/quartz/" maxDepth="1">
<!--                    相对于基路径匹配要删除的文件-->
                    <IfFileName glob="quartz.log.*.gz" />
<!--                    7D-7天,保留7天内的文件-->
                    <IfLastModified age="7D" />
                </Delete>
            </DefaultRolloverStrategy>
        </RollingFile>
<!--        帆软日志文件输出-->
        <RollingFile name="standard" fileName="${sys:LOG_HOME}/../logs/fanruan.log" filePattern="${sys:LOG_HOME}/../logs/fanruan.log.%d{yyyy-MM-dd}.gz">
<!--            %X-MDC,对应日志中输出模板名称的配置-->
            <PatternLayout pattern="%d{yyyy/MM/dd HH:mm:ss} %t %p [%c] %X{templateName} %m%n"/>
            <Policies>
                <TimeBasedTriggeringPolicy modulate="true" interval="1"/>
            </Policies>
            <DefaultRolloverStrategy>
                <Delete basePath="${sys:LOG_HOME}/../logs/" maxDepth="1">
                    <IfFileName glob="fanruan.log.*.gz" />
                    <IfLastModified age="180D" />
                </Delete>
            </DefaultRolloverStrategy>
        </RollingFile>
<!--        控制台输出,包含帆软日志文件输出的内容-->
        <Console name="stdout" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{yyyy/MM/dd HH:mm:ss} %t %p [%c] %X{templateName} %m%n"/>
        </Console>
    </Appenders>
    <Loggers>
<!--        quartz日志文件输出,定义了级别,且不输出到Root-->
        <Logger name="com.fr.third.v2.org.quartz" level="DEBUG" additivity="false">
            <AppenderRef ref="quartz"/>
        </Logger>
<!--        hibernate框架输出,只定义了级别,默认输出到Root-->
        <Logger name="com.fr.third.org.hibernate" level="ERROR"/>
<!--        根记录器,级别会被代码动态指定-->
        <Root level="ERROR">
            <AppenderRef ref="standard"/>
            <AppenderRef ref="stdout"/>
        </Root>
    </Loggers>
</Configuration>

3. 修改配置文件编辑

本文将为大家讲解如何修改log4j配置文件中的一些常用文件位置和异常信息。

1)修改fanruan.log的位置

如需修改fanruan.log的位置,可以修改RollingFile标签name=”standard”下fileName的路径,建议保留fanruan.log的文件名。

如需修改fanruan.log压缩文件的存放位置,可以修改filePattern(压缩文件保存格式)和basePath(删除文件的基本路径)

2)修改quartz.log的位置

如需修改quartz.log的位置,可以修改RollingFile标签name=”quartz”下fileName的路径,建议保留quartz.log的文件名。

如需修改quartz.log压缩文件的存放位置,可以修改filePattern(压缩文件保存格式)和basePath(删除文件的基本路径)

3)修改异常跟踪信息的行数

如需修改异常跟踪信息的行数,可以在标签PatternLayout的pattern中增加%ex{num},num是需要记录的行数。

如下图所示,配置记录行数为3

日志中: