ロックバック学習(1)

2848 ワード

最近LogBackについて勉強していますが、これはLog 4 jのアップグレードだと思います.
http://logback.qos.ch/documentation.htmlは、ファイルを書く速度が8または9マイクロ秒であり、データベースを書く時間も数ミリ秒である.マルチスレッドのログ書き込みの性能は大幅に向上したという.現在のlogbackには以下のコアクラスがあります.
クラス名
必要かどうか
loback-access-1.0.13.jar
必要でない
loback-classic-1.0.13.jar
必要
loback-core-1.0.13.jar
必要
slaf 4 j-appi-1.7.5.jar
必要
導入したクラスから分かるように、それはslaf 4 jに依存しています.logback-accessはlogbackの必須のカバンではなく、特別なログ記録方式が必要なときだけです.例えば、socket、データベース方式など.
     その研究を通して、Logbackは非侵入的なテストプログラムであるため、ここにその設定ファイルを書きました.

<configuration>
  <statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />

  <appender name="ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>MqClearLog.log</file>
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
      <!-- rollover daily -->
      <fileNamePattern>MqClearLog-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
      <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
        <!-- or whenever the file size reaches 100MB -->
        <maxFileSize>100MB</maxFileSize>
      </timeBasedFileNamingAndTriggeringPolicy>
    </rollingPolicy>
    <encoder>
      <pattern>%msg%n</pattern>
    </encoder>
  </appender>

  <root level="debug">
    <appender-ref ref="ROLLING" />
  </root>

</configuration>
テストした結果、その出力は以下の通りです.
参照
16:22:41,200_;-INFO in ch.qos.logback.lassic.Logg erContext[default]-Could NOT find resource[logback.groovy]
16:22:41,200_;-INFO in ch.qos.logback.lassic.Logg erCotext[default]-Could NOT find resource[logback-test.xml]
16:22:41,200_;-INFO in ch.qos.logback.lassic.Logg erContect[default]-Could NOT find resource[logback.xml]
16:22:41,201,-INFO in ch.qos.logback.lassic.Logg erConteet[default]-Setting up default configration.
16:22:41.247[main]INFO  chapters.co.nfigrations.MyApp 2-Enteringアプリ.
16:22:41.249[main]DEBUG chapters.co.figrations.Foo-Did it again!
16:22:41.249[main]INFO  chapters.co.nfigrations.MyApp 2-Exitingアプリ.
その後、公式文書を読むことによって、「Sttus Printer.print(lc)」が削除されることが分かります.「この文はlogbackの状態が印刷されないので、削除しました.その後の出力結果は以前と同じです.しかし、公式文書では、設定ファイルが正確であれば印刷できないと言っています.設定問題として確認されました.
<statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />
この文はlogbackの状態情報をconsoneにプリントして、これを除いても大丈夫です.長い間悩んでいました.