バージョンアップ情報
Logback情報
- Logbackとは
- 主な機能
- 主な特徴
- 類似プロダクト
- Logback、Log4j、Log4j2のパフォーマンス比較
- Logbackのログレベル
- 動作環境
- Logbackのライセンス
- 参考情報
- オープンソース年間サポートサービス
Logbackとは
Logbackは、Log4jの後継プロジェクトとなることを目的としており、Log4jの創設者であるCeki Gülcü氏によって設計されました。
Logbackは強固なロギングシステムの設計で得られた10年の経験に基づいており、既存のロギングシステムよりも高速で、使用するリソースも小さくなっています。
また、Logbackは他のロギングシステムにはない独自の便利な機能を提供しています。
現在、Logbackはlogback-core、logback-classic、logback-accessの3つのモジュールに分かれており、logback-coreモジュールは、 他の2つのモジュールのベースとなり、logback-classicモジュールは、大幅に改善されたバージョンのLog4j 1.xの内容を吸収できます。
logback-accessモジュールは、TomcatやJettyなどのサーブレットコンテナと統合して、HTTPアクセスログ機能を提供します。
主な機能
主な機能は以下のとおりです。
- ログ出力方法指定機能(Logger)
- ログ出力先指定機能(Appender)
- ログ出力フォーマット指定機能(Layout)
- ログフィルタリング機能(Filter)
主な特徴
主な特徴は以下のとおりです。
高速&メモリ削減 |
Log4j 1.xと比較して、一部の重要な処理が約10倍に高速化され、メモリ使用量も削減されている。 |
---|---|
汎用性 |
logback-classicはSLF4J APIをネイティブ実装しているため、LogbackとLog4j 1.xやjava.util.logging(JUL)などの他のロギングフレームワークを簡単に切り替えることができる。 |
柔軟性 |
Logbackの設定は、プログラム、XMLまたはGroovy形式で表現されたスクリプトを使用して構成することができる。 また、既存のWebアプリケーションのlog4j.propertiesを、logback.xmlに変換することもできる。 |
幅広い |
Log4j 1.xが提供するものよりも幅広いフィルタリング機能が付属している (たとえば、問題の特定を担当するユーザーのみデバッグレベルとし、それ以外のユーザーは警告レベルでログを保持することができる)。 |
類似プロダクト
- Apache Log4j
- java.util.logging (JUL)
Logback、Log4j、Log4j2のパフォーマンス比較
単位:ops/ms
スレッド |
Log4j 同期 |
Log4j 非同期 |
Log4j2 同期 |
Log4j2 非同期 |
Logback 1.3.0 同期 |
Logback 1.3.0 非同期 |
---|---|---|---|---|---|---|
1 |
987.08 |
745.34 |
884.33 |
844.67 |
2,139.83 |
1,760.30 |
2 |
542.27 |
716.09 |
1,220.76 |
819.40 |
2,276.77 |
1,821.36 |
4 |
639.86 |
676.35 |
1,406.60 |
770.27 |
1,836.99 |
1,799.39 |
8 |
633.13 |
726.21 |
1,257.63 |
733.25 |
1,787.62 |
1,774.99 |
16 |
585.13 |
693.74 |
1,211.31 |
722.34 |
1,813.09 |
1,815.10 |
32 |
643.85 |
657.08 |
1,203.27 |
704.08 |
1,782.81 |
1,751.21 |
64 |
576.67 |
696.21 |
1,236.37 |
726.15 |
1,740.27 |
1,644.81 |
Logbackのログレベル
Logbackは、5つのログレベルを標準提供します。
レベルは下表のように順序付けられていることを前提としています。
(TRACE < DEBUG < INFO < WARN < ERROR)
TRACE |
重要度の低い情報イベント |
---|---|
DEBUG |
重要度が非常に低い情報イベント |
INFO |
全体的な進行状況を示すイベント |
WARN |
潜在的に有害な状況を示すイベント |
ERRROR |
エラーイベント(致命的であるかどうかに係わらない) |
動作環境
前提となる動作環境は、以下のとおりです。
サーバOS
Java Runtime Environment(JRE)の動作環境に準ずる
その他動作環境
Logbackのバージョン1.3.x以降はビルドにJava 9が必要です。
(但し、Java8以降で実行は可能です。)
Logbackのバージョン1.2.xの場合はJava 6.xが必要です。
Logbackのライセンス
Logbackは Eclipse Public License v1.0、もしくはLesser General Public License version 2.1に従って再配布することができます。
オープンソース年間サポートサービス
OpenStandiaではOSSを安心してご利用いただけるように、オープンソース年間サポートサービスをご提供しております。
サポートしているOSSは下記ページをご参照ください。
関連OSS
-
サポート対象
Prometheus
プロメテウス。GO言語で書かれたオープンソースのモニタリングツールです。
-
Loki
ロキ。Prometheusに着想を得た、水平方向にスケーラブルすることで可用性を高めたマルチテナントのログ集約システムです。
-
Logstash
ログスタッシュ。Elastic社により開発された、データ収集ツールです。
-
サポート対象
Apache Log4j
アパッチログフォージェイ。オープンソースのJava プログラム用のロギングユーティリティ(API)です。