第16章 ロギングの設定


Red Hat build of Keycloak のロギングを設定します。

Red Hat build of Keycloak は、JBoss Logging フレームワークを使用します。以下は、共通の親ログハンドラー root を持つ使用可能なログハンドラーの概要です。

  • console
  • file
  • syslog

16.1. ロギング設定

ロギングは、Red Hat build of Keycloak でカテゴリーごとに行われます。ロギングは、ルートログレベル、または org.hibernateorg.keycloak などのより具体的なカテゴリーで設定できます。特定のログハンドラーごとにログレベルをカスタマイズすることも可能です。

この章では、ロギングの設定方法を説明します。

16.1.1. ログレベル

次の表は、使用可能なログレベルを定義しています。

Expand
レベル説明

FATAL

いかなる種類の要求にもまったく対応できない致命的な障害。

ERROR

要求を処理できなくなる重大なエラーまたは問題。

WARN

即時の修正を必要としない場合もある、致命的ではないエラーまたは問題。

INFO

Red Hat build of Keycloak のライフサイクルイベントまたは重要な情報。低頻度で発生。

DEBUG

データベースログなど、デバッグ目的の詳細情報。高頻度で発生。

TRACE

最も詳細なデバッグ情報。非常に高い頻度で発生。

ALL

すべてのログメッセージ向けの特別なレベル。

OFF

ログを完全にオフにする特別なレベル (推奨されません)。

16.1.2. ルートログレベルを設定する

より具体的なカテゴリーロガーのログレベル設定が存在しない場合は、代わりにそれを含むカテゴリーが使用されます。それを含むカテゴリーがない場合は、ルートロガーレベルが使用されます。

ルートログレベルを設定するには、次のコマンドを入力します。

bin/kc.[sh|bat] start --log-level=<root-level>
Copy to Clipboard Toggle word wrap

このコマンドには、次のガイドラインを使用してください。

  • <root-level> には、前述の表で定義されたレベルを指定します。
  • ログレベルで大文字と小文字は区別されません。たとえば、DEBUG または debug を使用できます。
  • 誤ってログレベルを 2 回設定してしまった場合、リストの最後に指定されたログレベルになります。たとえば、--log-level="info,…​,DEBUG,…​" の構文を含めた場合、ルートロガーは DEBUG になります。

16.1.3. カテゴリー固有のログレベルを設定する

Red Hat build of Keycloak では、特定の領域に異なるログレベルを設定できます。このコマンドを使用すると、別のログレベルが必要なカテゴリーをコンマ区切りリストで指定できます。

bin/kc.[sh|bat] start --log-level="<root-level>,<org.category1>:<org.category1-level>"
Copy to Clipboard Toggle word wrap

カテゴリーに適用される設定は、より具体的な一致するサブカテゴリーを含めない限り、そのサブカテゴリーにも適用されます。

bin/kc.[sh|bat] start --log-level="INFO,org.hibernate:debug,org.hibernate.hql.internal.ast:info"
Copy to Clipboard Toggle word wrap

この例では、次のようにログレベルを設定します。

  • すべてのロガーのルートログレベルは INFO に設定されます。
  • 通常、ハイバーネートログレベルは DEBUG に設定されます。
  • SQL 抽象構文ツリーが詳細なログ出力を作成しないようにするために、特定のサブカテゴリー org.hibernate.hql.internal.ast が INFO に設定されます。その結果、SQL 抽象構文ツリーは debug レベルでは表示されずに省略されます。

16.1.3.1. レベルを個別のオプションとして設定する

カテゴリー固有のログレベルを設定する場合は、log-level オプションを使用する代わりに、個別の log-level-<category> オプションとしてログレベルを設定することもできます。これは、以前に設定した log-level オプションを上書きせずに、選択したカテゴリーのログレベルを設定する場合に便利です。

サーバーを次のように起動した場合:

bin/kc.[sh|bat] start --log-level="INFO,org.hibernate:debug"
Copy to Clipboard Toggle word wrap

その後、環境変数 KC_LOG_LEVEL_ORG_KEYCLOAK=trace を設定して、org.keycloak カテゴリーのログレベルを変更できます。

log-level-<category> オプションは log-level よりも優先されます。これにより、log-level オプションで設定された内容を上書きできます。たとえば、上記の CLI の例で KC_LOG_LEVEL_ORG_HIBERNATE=trace を設定すると、org.hibernate カテゴリーは debug ではなく trace レベルを使用します。

環境変数を使用する場合、カテゴリー名は大文字にし、ドットはアンダースコアに置き換える必要があることに注意してください。他の設定ソースを使用する場合は、カテゴリー名を「そのまま」指定する必要があります。例:

bin/kc.[sh|bat] start --log-level="INFO,org.hibernate:debug" --log-level-org.keycloak=trace
Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat