<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、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                [TOC] # Spring Boot 默認日志格式是 ~~~ %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n # %d{yyyy-MM-dd HH:mm:ss.SSS} 時間 # %thread 線程名稱 # %-5level 日志級別從左顯示5個字符寬度 # %logger{50} 類名 # %msg%n 日志信息加換行 ~~~ * 時間日期:精確到毫秒 * 日志級別:ERROR, WARN, INFO, DEBUG or TRACE * 進程ID * 分隔符:— 標識實際日志的開始 * 線程名:方括號括起來(可能會截斷控制臺輸出) * Logger名:通常使用源代碼的類名 * 日志內容 至于為什么 Spring Boot 的默認日志輸出格式是這樣? ![](https://img.kancloud.cn/5e/0f/5e0f2e234e900df3da3580a12214c978_898x340.png) # 日志簡介 需要注意的是,要為系統導入 SLF4J 的 jar 和 日志框架的實現 jar. 由于每一個日志的實現框架都有自己的配置文件,所以在使用 SLF4 之后,配置文件還是要使用實現日志框架的配置文件。 ~~~ import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class HelloWorld { public static void main(String[] args) { Logger logger = LoggerFactory.getLogger(HelloWorld.class); logger.info("Hello World"); } } ~~~ # 統一日志框架的使用 一般情況下,在項目中存在著各種不同的第三方 jar ,且它們的日志選擇也可能不盡相同. 顯然這樣是不利于我們使用的,那么如果我們想為項目設置統一的日志框架該怎么辦呢? **統一日志框架使用步驟歸納如下**: 1. 排除系統中的其他日志框架。 2. 使用中間包替換要替換的日志框架。 3. 導入我們選擇的 SLF4J 實現。 我們自行排除依賴時也只需要按照圖中的方式就好了。 ![](https://img.kancloud.cn/d0/82/d0827d173602e64d0a6f65fb65fe7b35_535x701.png) **統一框架引入替換包** 其實 Spring Boot 也是使用了 SLF4J+logback 的日志框架組合,查看 Spring Boot 項目的 Maven 依賴關系可以看到 Spring Boot 的核心啟動器 `spring-boot-starter` 引入了 `spring-boot-starter-logging`. ~~~ <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> <version>2.1.1.RELEASE</version> <scope>compile</scope> </dependency> ~~~ 而 spring-boot-starter-logging 的 Maven 依賴主要引入了 logback-classic (包含了日志框架 Logback 的實現),log4j-to-slf4j (在 log4j 日志框架作者開發此框架的時候還沒有想到使用日志抽象層進行開發,因此出現了 log4j 向 slf4j 轉換的工具),jul-to-slf4j ( Java 自帶的日志框架轉換為 slf4j). ~~~ <dependencies> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-to-slf4j</artifactId> <version>2.11.1</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jul-to-slf4j</artifactId> <version>1.7.25</version> <scope>compile</scope> </dependency> </dependencies> ~~~ # 自定義日志輸出 可以直接在配置文件編寫日志相關配置。 ~~~ # 日志配置 # 指定具體包的日志級別 logging.level.net.codingme=debug # 控制臺和日志文件輸出格式 logging.pattern.console=%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n logging.pattern.file=%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n # 日志文件大小 logging.file.max-size=10MB # 保留的日志時間 logging.file.max-history=10 # 日志輸出路徑,默認文件spring.log logging.path=systemlog #logging.file=log.log ~~~ # logging.file和logging.path問題 * logging.file,設置文件,可以是絕對路徑,也可以是相對路徑。如:logging.file=my.log * logging.path,設置目錄,會在該目錄下創建spring.log文件,并寫入日志內容,如:`logging.path=/var/log`如果只配置 logging.file,會在項目的當前路徑下生成一個 xxx.log 日志文件。如果只配置 logging.path,在 /var/log文件夾生成一個日志文件為 spring.log > 注:二者不能同時使用,如若同時使用,則只有logging.file生效 默認情況下,日志文件的大小達到10MB時會切分一次,產生新的日志文件,默認級別為:ERROR、WARN、INFO # 自定義日志配置 根據不同的日志系統,你可以按如下規則組織配置文件名,就能被正確加載: * Logback:logback-spring.xml, logback-spring.groovy, logback.xml, logback.groovy * Log4j:log4j-spring.properties, log4j-spring.xml, log4j.properties, log4j.xml * Log4j2:log4j2-spring.xml, log4j2.xml * JDK (Java Util Logging):logging.properties `Spring Boot`官方推薦優先使用帶有`-spring`的文件名作為你的日志配置(如使用logback-spring.xml,而不是logback.xml),命名為logback-spring.xml的日志配置文件,spring boot可以為它添加一些spring boot特有的配置項(下面會提到)。 默認的命名規則,并且放在 src/main/resources 下面即可 如果你即想完全掌控日志配置,但又不想用logback.xml作為Logback配置的名字,application.yml可以通過logging.config屬性指定自定義的名字: ~~~ logging.config=classpath:logging-config.xml ~~~ 雖然一般并不需要改變配置文件的名字,但是如果你想針對不同運行時Profile使用不同的日志配置,這個功能會很有用。 一般不需要這個屬性,而是直接在logback-spring.xml中使用springProfile配置,不需要logging.config指定不同環境使用不同配置文件。
                  <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>

                              哎呀哎呀视频在线观看