• springboot的yml配置文件整合logback,按照不同环境不同配置打印


    yml文件中添加配置:

    ##########  日志 配置 - START  ##########
    logging:
    config: classpath:logback-spring.xml # logback日志配置
    yh:
    logFileHome: # 各个环境的配置文件目录
    dev: d:/logs/
    test: /www/wwwroot/yhApps/logs/
    pro: /www/wwwroot/yhApps/logs/
    pattern: "%-12(%d{yyyy-MM-dd HH:mm:ss.SSS}) |-%-5level [%thread] %c [%L] -| %msg%n"
    maxHistory: 100 # 最大保存100个(天)的历史文件

    resources目录下添加文件:logback-spring.xml ,文件内容如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <!-- 属性描述 scan:性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。
        debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 -->
    <configuration scan="true" scanPeriod="60 seconds" debug="false">
        <contextName>yh-springboot-basic</contextName>
        <!-- 文件输出格式 -->
        <!--<property name="PATTERN" value="%-12(%d{yyyy-MM-dd HH:mm:ss.SSS}) |-%-5level [%thread] %c [%L] -| %msg%n" />-->
        <springProperty scope="context" name="pattern" source="logging.yh.pattern"/>
        <!--最大历史日志文件数量-->
        <springProperty scope="context" name="maxHistory" source="logging.yh.maxHistory"/>
        <!--应用名称-->
        <springProperty scope="context" name="appName" source="my.info.appName"/>
    
        <!-- dev文件路径 -->
        <springProperty scope="context" name="devLogHome" source="logging.yh.logFileHome.dev"/>
        <!-- test文件路径 -->
        <springProperty scope="context" name="testLogHome" source="logging.yh.logFileHome.test"/>
        <!-- pro文件路径 -->
        <springProperty scope="context" name="proLogHome" source="logging.yh.logFileHome.pro"/>
    
        <!-- 开发环境 -->
        <springProfile name="dev">
            <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
                <encoder>
                    <pattern>${pattern}</pattern>
                </encoder>
            </appender>
    
            <!-- 每天产生一个文件 -->
            <appender name="CONSOLE-FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
                <!-- 文件路径 -->
                <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                    <!-- 文件名称 -->
                    <fileNamePattern>${devLogHome}/${appName}_log/debug.%d{yyyy-MM-dd}.log</fileNamePattern>
                    <!-- 文件最大保存历史数量 -->
                    <MaxHistory>100</MaxHistory>
                </rollingPolicy>
                <layout class="ch.qos.logback.classic.PatternLayout">
                    <pattern>${pattern}</pattern>
                </layout>
            </appender>
    
            <logger name="com.yh" level="debug"/>
            <root level="info">
                <appender-ref ref="CONSOLE"/>
                <appender-ref ref="CONSOLE-FILE"/>
            </root>
        </springProfile>
    
        <!-- 测试环境 -->
        <springProfile name="test">
            <!-- 每天产生一个文件 -->
            <appender name="TEST-FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
                <!-- 文件路径 -->
                <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                    <!-- 文件名称 -->
                    <fileNamePattern>${testLogHome}/${appName}_log/info.%d{yyyy-MM-dd}.log</fileNamePattern>
                    <!-- 文件最大保存历史数量 -->
                    <MaxHistory>100</MaxHistory>
                </rollingPolicy>
                <layout class="ch.qos.logback.classic.PatternLayout">
                    <pattern>${pattern}</pattern>
                </layout>
            </appender>
            <root level="info">
                <appender-ref ref="TEST-FILE"/>
            </root>
        </springProfile>
    
        <!-- 生产环境 -->
        <springProfile name="pro">
            <appender name="PROD_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
                <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                    <fileNamePattern>${proLogHome}/${appName}_log/warn.%d{yyyy-MM-dd}.log</fileNamePattern>
                    <MaxHistory>100</MaxHistory>
                </rollingPolicy>
                <layout class="ch.qos.logback.classic.PatternLayout">
                    <pattern>${pattern}</pattern>
                </layout>
            </appender>
            <root level="warn">
                <appender-ref ref="PROD_FILE"/>
            </root>
        </springProfile>
    </configuration>

     

  • 相关阅读:
    sql sever读取写入Excel总结
    sql sever跨数据库复制数据的方法
    SQLServer2005重建索引前后对比【转】
    SQL自定义函数
    【C】——回调函数实现泛型算法
    【C】——压缩字符串
    【C】——指针与const限定符
    loop within fields
    分类与分步在行测数量关系中的应用
    隔年增长率
  • 原文地址:https://www.cnblogs.com/izyh/p/15945950.html
Copyright © 2020-2023  润新知