SpringBoot入門系列:第三篇 日誌輸出
阿新 • • 發佈:2019-01-02
Java程式,日誌輸出,我認為是第一位的,把它的應用拿到這裡。
Spring-Boot對日誌的處理,和我們往常的處理完全可以一致,通過logback.xml進行處理,即使有更先進的東西,我們也不用去管它。
這裡,為了簡便,我們任然使用前一篇的工程spring-boot-sample-data
第一步,在src/main/resources中增加logback.xml檔案,檔案內容為(這裡僅最簡單的,根據工程情況,進行相應的配置):
<pre name="code" class="html"><configuration> <!-- %m輸出的資訊,%p日誌級別,%t執行緒名,%d日期,%c類的全名,,,, --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>%d %p (%file:%line\)- %m%n</pattern> <charset>GBK</charset> </encoder> </appender> <appender name="baselog" class="ch.qos.logback.core.rolling.RollingFileAppender"> <File>log/base.log</File> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>log/base.log.%d.%i</fileNamePattern> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <!-- or whenever the file size reaches 64 MB --> <maxFileSize>64 MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder> <pattern> %d %p (%file:%line\)- %m%n </pattern> <charset>UTF-8</charset> <!-- 此處設定字符集 --> </encoder> </appender> <root level="info"> <appender-ref ref="STDOUT" /> </root> <logger name="com.example" level="DEBUG"> <appender-ref ref="baselog" /> </logger> </configuration>
注:1、控制檯和日誌檔案的字符集
2、日誌檔案的存放位置,須要遵守linux的命名規則
第二步,改造HelloController檔案,改造結果如下
注:在新增引用時,日誌的包一定是org.slf4j.Logger、org.slf4j.LoggerFactorypackage com.example; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class HelloController { protected static Logger logger=LoggerFactory.getLogger(HelloController.class); @RequestMapping("/") public String helloworld(){ logger.debug("訪問hello"); return "Hello world!"; } @RequestMapping("/hello/{name}") public String helloName(@PathVariable String name){ logger.debug("訪問helloName,Name={}",name); return "Hello "+name; } }
第三步、測試
1、執行程式
2、在瀏覽器中依次輸入
http://localhost:8080/
http://localhost:8080/hello/上帝3、在工程所在的根目錄找到log資料夾,進去,再開啟base.log,入下圖
注:資料夾和日誌檔案的名稱,都是在配置檔案logback.xml中設定的
通過這個例項,我們完全用過去的技術處理日誌,暫時不用去管別的,直接使曾經的技術。