背景: Spring Boot 1.4から始まるバージョンはLOG4J2を使用する必要があるため、サポートされている形式はJSONとXMLです。このプラクティスでは、主にXMLのフォーマット定義ログ説明を使用しています。
Spring Boot 1.5.8.Release log4j2を導入するための開発手順は次のとおりです。
1.最初に、スプリングブートスターターウェブおよびスプリングブートスターターパッケージの下にスプリングブートスターターログを除外し、スプリングブートスターターログ4J2パッケージを導入します。
<Dependency> groupId> org.springframework.boot </groupid> <artifactid> spring-boot-starter-web </artifactid> <explusions> <exclusion> <groupid> org.springframework.boot </groupid> <artifactid> spring-boot-startertertertertertertertertertertertertertertertertertertertertid </artifactid> <! - https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-log4j2--> <dependency> groupid> org.springframework.boot </groupid> <artifactid> spring-boot-starter-log4j2 </artifactid> <バージョン> 1.5.8.Release </version> </dependency>
2. POM内の変数をPOMのプロパティを介して変更できるように、POMのファイルリソースの場所を設定します。
<finalName> $ {project.Name} </finalName> <Sourcedirectory> src/main/java </sourcedirectory> <testsourcedirectory> src/java </testSourcedirectory> <リソース> <リソース> <リソース> <ディレクトリ> src/src/main/contive < </include> </resource> </resources>可変交換属性を設定します
<properties> <project.build.sourceencoding> utf-8 </project.build.sourceencoding> <project.reporting.outputencoding> utf-8 </project.reporting.outputencoding <log4j2.root.path>/opt/appstack/apache-tomcat/logs/$ {project.name} </log4j2.root.path> <log4j2.error.path>/opt/appstack/apache-tomcat/logs/$ {project.name} - エラー<log4j2.package.path>/opt/appstack/apache-tomcat/logs/$ {project.name} -kk </log4j2.package.path> </properties> 3. Spring Bootは構成ファイルYMLまたはプロパティに保護効果があるため、構成ファイルの変数を置き換えるためにプラグインが必要です。
<PluginManagement> <Plugins> <Plugin> <groupId> org.springframework.boot </groupid> <artifactid> spring-boot-maven-plugin </artifactid> </artifactid> </plugin> <! - アプリケーション.ymlおよびapplication.propertiesを保護するためのスプリングブート、デフォルトのplaceholder $ epatifed eptiutififid of in fist for fist application.Properties、デフォルトのプレースホルダー$ {...}は、YMLおよびSpring BootのプロパティファイルにMaven変数を使用して$ {} Placeholder - > <Plugin> <plugin> <artifactid> maven-resources-plugin-conforation </artifactid> </artifactid> <usedefaultdelimiters> true </useedefaultdelimiters> </configuration> </plugin> </pluginins> </pluginmanagement>4.この例では、スプリングブートのYML構成を使用し、application.ymlでlog4j2構成ファイルを構成します
ロギング:
config:classpath:log4j2.xml
さまざまな環境に異なるlog4j2構成ファイルを構成する場合は、対応するapplication.ymlで構成値を設定できます。
5。log4j2.xmlの構成ファイルを構成します
<?xml version = "1.0" encoding = "utf-8"?> <configuration status = "> <! - global parameters-> <properties> <property name =" pattern ">%d {yyyy-mm-dd hh:mm:ss、ss}%5p%c {1} level = "debug"> <appenderref ref = "console"> </appenderref> <appenderref ref = "rolling_file"> </appenderref> </root> < ref = "file"> </appenderRef> </logger> </logger> <appenters> <コンソール名= "コンソール"ターゲット= "system_out" follow = "true"> <! - コンソールはレベル以上のレベルでのみ情報を出力します - > <thresholdfilter level = "info" onmatch = "compction" onmy = "/pittern> </patternlayout> </console> <! - 同じソースからの付録は、複数のローリングファイルを定義することができ、日ごとに保存されたログを定義できます - > <rollingfile "filename =" $ {log4j2.root.path} .log "filepattern =" $ {log4j2.root.path} dddddddddddddddddddddddddddddddddddddddddddddddddddddddddd <thresholdfilter level = "info" onmatch = "accept" onmismatch = "deny"/> <patternlayout> <pattern> $ {pattern} </pattern> </patternlayout> <ポリシー> <timebasedtriggeringpolicy interval = "1"/> <! - <sizebadggeringpolicy zize = </</</</</</</< name = "file" filename = "$ {log4j2.package.path} .log"> <! - < <pattern> $ {pattern} </pattern> </patternlayout> </file> </appenders> </configuration>6。LOG4J2ログはJavaプログラムコードで使用されます。
private static logger log = loggerFactory.getLogger(usercontroller.class); log.info( "Enter in EntityParam"); ......
7.システム時間を変更することにより、テストログは毎日保存および構成されます。
上記の例Spring Boot Custom Custom Log4J2ログファイルの説明は、私があなたと共有するすべてのコンテンツです。参照を提供できることを願っています。wulin.comをもっとサポートできることを願っています。