一般的な状況: ログ ファイルは yyyy-MM-dd に従ってフォルダーに分割され、%i は 1 つのログ ファイルのサイズに応じてファイルを切り取り、インデックス付きの名前を付けます。
- 開発環境 (dev): ファイルではなくコンソールにのみ出力され、ログ レベルは INFO です。
- テスト環境(test):コンソール出力、ファイル出力、ログレベルはINFO、再起動時にログ内容をクリア可能(デバッグに便利)。
- 本番環境(prod):コンソールには出力せず、ファイルのみに出力、ログレベルはERROE(エラーログのみ記録)、再起動時のログクリア禁止(他人のエラーログを漏らさないため)クリアされているため、他の人は問題を見つけることができません)。
pom.xml は環境構成を追加します
<!-- 环境配置 -->
<profiles>
<profile>
<id>dev</id>
<properties>
<spring.profiles.active>dev</spring.profiles.active>
</properties>
<activation>
<!-- 设为默认开启 -->
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>test</id>
<properties>
<spring.profiles.active>test</spring.profiles.active>
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
<spring.profiles.active>prod</spring.profiles.active>
</properties>
</profile>
</profiles>
アプリケーション.yml
spring:
application:
name: '@artifactId@'
profiles:
#环境(idea右边栏的maven可以选配置文件的环境)
active: '@spring.profiles.active@'
アプリケーション開発.yml
開発環境設定ファイル
#按需配置
アプリケーションテスト.yml
テスト環境設定ファイル
logging:
level:
#spring根日志级别
root: error
#spring web日志级别
web: error
#项目日志级别
com.fu.easycode: info
#SQL日志打印
com.fu.easycode.mapper: debug
file:
#日志存放路径
path: ./log/${
spring.application.name}/${
spring.profiles.active}
#日志名称
name: '${logging.file.path}.log'
charset:
#控制台编码
console: UTF-8
#输出到文件编码
file: UTF-8
pattern:
#控制台日志输出样式
console: '%clr(%d{${LOG_DATEFORMAT_PATTERN:yyyy-MM-dd HH:mm:ss.SSS}}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}'
#输出到文件的样式
file: '%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}} ${LOG_LEVEL_PATTERN:-%5p} ${PID:- } --- [%t] %-40.40logger{39} : %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}'
logback:
rollingpolicy:
#重启是否清除日志(推荐测试环境使用)
clean-history-on-start: true
#切割日志格式
file-name-pattern: ${
logging.file.path}.%d{
yyyy-MM-dd}.%i.log
#单个日志文件最大大小
max-file-size: 10MB
#全部日志文件最大大小
total-size-cap: 50GB
#日志存放天数
max-history: 15
アプリケーション製品.yml
本番環境設定ファイル
logging:
level:
#spring根日志级别
root: error
#spring web日志级别
web: error
#项目日志级别
com.fu.easycode: error
#SQL日志打印
com.fu.easycode.mapper: debug
file:
#日志存放路径
path: ./log/${
spring.application.name}/${
spring.profiles.active}
#日志名称
name: '${logging.file.path}.log'
charset:
#输出到文件编码
file: UTF-8
pattern:
#输出到文件的样式
file: '%d{${LOG_DATEFORMAT_PATTERN:HH:mm:ss}} ${LOG_LEVEL_PATTERN:-%5p} ${PID: } --- [%t] %-40.40logger{39} : %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}'
logback:
rollingpolicy:
#重启是否清除日志,默认:否
clean-history-on-start: false
#切割日志格式
file-name-pattern: ${
logging.file.path}.%d{
yyyy-MM-dd}.%i.log
#单个日志文件最大大小
max-file-size: 10MB
#全部日志文件最大大小
total-size-cap: 50GB
#日志存放天数
max-history: 15