Logbackの統合されたアプリケーションを構築SpringBoot

依存関係の並べ替え

  私たちは、単純なモノマーのIDEAでアプリケーションを構築する場合、それはPOMはすでにlogbackに依存して統合されている依存します。

  私たちは、のpom.xmlを開くことができます

  

    <親> 
        <groupIdを> org.springframework.boot </ groupIdを> 
        <たartifactId>春・ブート・スターター・親</たartifactId> 
        <バージョン> 2.1.7.RELEASE </バージョン> 
        <relativePath /> <! -検索リポジトリから親- > 
    </親>

  春・ブート・スタータ親にクリックに依存春ブート依存性

 

  <親> 
    <groupIdを> org.springframework.boot </ groupIdを> 
    <たartifactId>春ブート依存関係</たartifactId> 
    <バージョン> 2.1.7.RELEASE </バージョン> 
    <relativePath> ../../ spring-ブート依存関係</ relativePath> 
  </親>

 

  そして、春ブート・スターターで見つかった春ブート依存関係に

  <依存性> 
        <のgroupId> org.springframework.boot </のgroupId> 
        <たartifactId>ばねブートスターター</たartifactId> 
        <バージョン> 2.1.7.RELEASE </バージョン> 
  </依存>

  そして、春ブート・スターターへのバネブート・スターター・ログを検索します

   <依存性> 
      <のgroupId> org.springframework.boot </のgroupId> 
      <たartifactId>ばねブートスタータログイン</たartifactId> 
      <バージョン> 2.1.7.RELEASE </バージョン> 
      <スコープ>コンパイル</スコープ> 
    < /依存関係>

  頼りlogbackを見ることができるようにするために行くためにクリック

<依存性> 
    <依存性> 
      <のgroupId> ch.qos.logback </のgroupId> 
      <たartifactId> logback-古典</たartifactId> 
      <バージョン> 1.2.3 </バージョン> 
      <スコープ>コンパイル</スコープ> 
    </依存> 
    <依存性> 
      <のgroupId> org.apache.logging.log4j </のgroupId> 
      <たartifactId>のlog4jツーSLF4J </たartifactId> 
      <バージョン> 2.11.2 </バージョン> 
      <スコープ>コンパイル</スコープ> 
    </依存> 
    <依存> 
      <groupIdを> org.slf4j </ groupIdを> 
      <たartifactId> 7月ツーSLF4J </たartifactId> 
      <バージョン> 1.7。26 </バージョン> 
      <スコープ>コンパイル</スコープ> 
    </依存> 
  </依存関係>

 2つのXML設定

春の接尾辞<springProfile>ラベルを使用する可能性があるため、代わりに、理由として、logback.xml logback-spring.xml:まず、正式には、名前のXMLフォーマットを推奨しました  

私たちは、新しいlogback-spring.xmlは、リソースディレクトリに以下の作成します

 

<?xml version = "1.0"エンコード= "UTF-8"?> 
<構成> 

    <springProperty範囲= "コンテキスト" NAME = "ログレベル"ソース= "logging.pattern.level" /> 
    <springProperty範囲= "コンテキスト" NAME = "LOGPATH"ソース= "logging.path" /> 
    <springProperty範囲= "コンテキスト" NAME = "FILENAME"ソース= "logging.file" /> 

    <アペンダ名= "consoleLog"クラス= "ch.qos.logback .core.ConsoleAppender "> 
        <レイアウトクラス=" ch.qos.logback.classic.PatternLayout "> 
            <パターン> 
                %日付[%スレッド]%-5level%ロガー{80} - %のMSG%N 
            </パターン>
        </レイアウト> 
    </アペンダ> 

    <アペンダ名= "fileInfoLog"クラス= "ch.qos.logback.core.rolling.RollingFileAppender">
        <フィルタクラス= "ch.qos.logback.classic.filter.LevelFilter">  
            <レベル> ERROR </レベル>
            <onMatch>拒否</ onMatch> 
            <onMismatch> ACCEPT </ onMismatch> 
        </フィルタ> 
        <エンコーダ> 
            <パターン> 
                %日付[%スレッド] %-5level%ロガー{80} - %のMSG%N 
            </パターン> 
        </エンコーダ> 
        <! -滚动策略- > 
        <rollingPolicyクラス= "ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> 
            <! -路径- > 
            <fileNamePattern> $ {LOGPATH} / $ {fileNameに} - %のD {YYYY-MM-DD} - %i.log </ fileNamePattern> 
            <maxFileSizeの> 200メガバイト</ maxFileSizeの>
            <maxHistory> 60 </ maxHistory> 
        </ rollingPolicy>
/ rollingPolicy> 
    </アペンダ>


    <アペンダ名= "fileErrorLog"クラス= "ch.qos.logback.core.rolling.RollingFileAppender"> 
        <フィルタクラス= "ch.qos.logback.classic.filter.ThresholdFilter"> 
            <レベル> ERROR </レベル> 
        < /フィルタ> 
        <エンコーダ> 
            <パターン> 
                %日付[%スレッド]%-5level%ロガー{80} - %のMSGの%N 
            </パターン> 
        </エンコーダ> 
        <! -滚动策略- > 
        <rollingPolicyクラス=」 ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy "> 
            <! -路径- > 
            <fileNamePattern> $ {LOGPATH} / $ {fileNameに} - %dの{YYYY-MM-DD} -error-%i.log </ fileNamePattern>ログ</ fileNamePattern> 
            <maxFileSizeの> 200メガバイト</ maxFileSizeの>
            <maxHistory> 60 </ maxHistory> 
        </ rollingPolicy> 
    </アペンダ> 

    <! -ここでは、特定のパケットのログレベルの下方に配置- > 
    <! -プロファイルのログレベルが設定されている項目- > 
    <名前=ロガー"com.pyq.blog"レベル= "$ {ログレベル}" /> 
    <! -オープンコメントあなたは、自分のローカルの開発SQLを印刷したいが提出していない- > 

    <springProfile名= "DEV"> 
        <! -これをログレベルは、そのすべてのパッケージのために- > 
        <=ルートレベル"$ {}はログレベルは"> 
            <REF-REFはアペンダ"consolelogは" = /> 
<! - <REF-REFはアペンダ"fileInfoLogを" = /> - > 
            > - <! - <REF-REFは、アペンダ"fileErrorLogを" / => 
        </ルート> 
    </ springProfile> 

    <名前= springProfile "テスト"> 
        <=ルートレベル"$ {}ログレベルは"> 
            <! -ここにすべてのパッケージのログレベル- >
            <! - <アペンダ-REF REF = "consoleLog" /> - > 
            <アペンダ-REF REF = "fileInfoLog" />
            <アペンダ-REF REF = "fileErrorLog" /> 
        </ルート> 
    </ springProfile> 

    <springProfile名= "PROD"> 
        <ルートレベル= "$ {ログレベル}"> 
            <! -此处是针对所有包的日志级别- > 
            <! - <アペンダ-REF REF = "consoleLog" /> - > 
            <アペンダ-REF REF = "fileInfoLog" /> 
            <アペンダ-REF REF = "fileErrorLog" /> 
        </ルート> 
    </ springProfile> 

</ configuration>の

 

  

  上記パッケージには、独自の交換に名前を付けます

  三YML構成ログ

ログ:
  パス:D:\ログ
  ファイル:$ {} spring.application.name 
  パターン:
    レベル:INFO

  

おすすめ

転載: www.cnblogs.com/pangyangqi/p/11443035.html