<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                ## 一、需求: spring boot 用自帶的logback打印日志: 多環境打印. 1. 生產環境輸出到控制臺和文件,一天一個文件,保留30天. 2. 開發環境輸出到控制臺和打印sql(mybatis)輸出. 3. 測試環境輸出到控制臺. **前提**:項目已經支持application.yml的profile多環境配置 ![](https://img.kancloud.cn/18/dc/18dcb588ad4756a70365a87f6c6e5e5e_394x174.png) ## 二、配置文件 因為logback是spring boot的默認日志框架,所以不需要引入maven依賴,直接上logback-spring.xml放在resources下面 ![](https://img.kancloud.cn/06/37/06370b65606f9ca9b68866ea256e0d74_425x249.png) ~~~ <?xml version="1.0" encoding="UTF-8"?> <configuration> <!--引入默認的一些設置--> <include resource="org/springframework/boot/logging/logback/defaults.xml"/> <!--web信息--> <logger name="org.springframework.web" level="info"/> <!--寫入日志到控制臺的appender,用默認的,但是要去掉charset,否則windows下tomcat下亂碼--> <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>${CONSOLE_LOG_PATTERN}</pattern> </encoder> </appender> <!--定義日志文件的存儲地址 勿在 LogBack 的配置中使用相對路徑--> <property name="LOG_PATH" value="D:/logs/boot-launch"/> <!--寫入日志到文件的appender--> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!--日志文件輸出的文件名,每天一個文件--> <FileNamePattern>${LOG_PATH}.%d{yyyy-MM-dd}.log</FileNamePattern> <!--日志文件保留天數--> <maxHistory>30</maxHistory> </rollingPolicy> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern> </encoder> <!--日志文件最大的大小--> <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <MaxFileSize>10MB</MaxFileSize> </triggeringPolicy> </appender> <!--異步到文件--> <appender name="asyncFileAppender" class="ch.qos.logback.classic.AsyncAppender"> <discardingThreshold>0</discardingThreshold> <queueSize>500</queueSize> <appender-ref ref="FILE"/> </appender> <!--生產環境:打印控制臺和輸出到文件--> <springProfile name="prod"> <root level="info"> <appender-ref ref="CONSOLE"/> <appender-ref ref="asyncFileAppender"/> </root> </springProfile> <!--開發環境:打印控制臺--> <springProfile name="dev"> <!-- 打印sql --> <logger name="com.zimug.bootlaunch" level="DEBUG"/> <root level="DEBUG"> <appender-ref ref="CONSOLE"/> </root> </springProfile> <!--測試環境:打印控制臺--> <springProfile name="test"> <root level="info"> <appender-ref ref="CONSOLE"/> </root> </springProfile> </configuration> ~~~ ## 三、測試一下 ![](https://img.kancloud.cn/73/5b/735be3679f38bd0bd49efb72215ad237_348x200.png) ~~~ @RestController @Slf4j public class LogDemoController { //private static Logger log= LoggerFactory.getLogger(LogDemo.class); @GetMapping("/logdemo") public String log(){ log.trace("======trace"); log.debug("======debug"); log.info("======info"); log.warn("======warn"); log.error("======error"); return "logok"; } } ~~~ 啟動服務測試一下 [http://127.0.0.1:8899/kimgao/logdemo](http://127.0.0.1:8899/kimgao/logdemo) ![](https://img.kancloud.cn/7f/82/7f82b7dccf6f2ab3d6f2aa14e03c60f8_773x261.png) ![](https://img.kancloud.cn/95/34/95348a79a8d08a0634873083a9d8d141_634x241.png) prod打印的是info級別的日志所以能看到打印的內容為: ![](https://img.kancloud.cn/49/60/4960705028728cbe9b90bf5887b1a5c8_1498x198.png) 日志保存路徑: ![](https://img.kancloud.cn/96/a2/96a2a37be6f01678b0be6491078cb0ed_852x112.png) ![](https://img.kancloud.cn/ca/ae/caae421b15632e88dea8ac29985a2131_1226x244.png) ![](https://img.kancloud.cn/ad/fc/adfc191bc4bb8e0f690cf67d46df7d20_1726x520.png)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看