詳細な SQL ログの有効化

このページの内容

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

Confluence はオープンソースパーシステンスフレームワークの Hibernate を使用しています。このページでは、Confluence のログ作成を設定して、 Hibernate によりデータベースに送信される個別の SQL リクエストをレポートする方法について説明します。これは、次のイベントをトラブルシューティングする場合に有効です。

  • インポートに失敗したXML サイトバックアップ。
  • 不正なデータベース操作が原因の例外
  • 長時間実行しているデータベース クエリによって生じる問題 

パラメータを持つ SQL デバッグ ログ出力は非常に冗長であり、トラブルシューティングしている間だけ、一時的に有効化する必要があります。

データベースに問題があり、サポートの支援が必要な場合、ログ ファイルを送信する前に詳細な SQL ログ出力を一時的に無効化することをお勧めします。これは、報告された問題中に実行されている SQL クエリを判断するのに役立ちます。ログ出力の停止を有効化したら、エラーの原因と思われるアクションを再現します。これは Confluence ログ ファイルに関連する SQL ログ出力が含まれていることを確認するのに最も適した方法です。

パラメータを持つ SQL クエリのログ出力

一時 SQL ログ作成を有効化する手順

  1. > [一般設定] > [ログとプロファイルの作成] に進みます。
  2. SQL ログ作成を有効にするを選択します。 

SQL ログ出力を無効化するか、Confluence を再起動するまで、このログ出力レベルは保持されます。ログ出力レベルを保持する必要がある場合 (例: データベースに関連する起動時の問題のトラブルシューティング) 、以下の手順に従って log4j.properties を編集します。

持続 SQL ログ作成を有効化する手順

(warning) Use this method if you're using Confluence 7.11.x or earlier to ensure that parameters are also logged. You can revert the changes once you're done troubleshooting.

  1. Confluence を停止します。
  2. <install-directory>\confluence\WEB-INF\classes\log4j.properties を編集します。

  3. 以下の行を ERROR  から DEBUG に変更します。

    ## log hibernate prepared statements/SQL queries (equivalent to setting 'hibernate.show_sql' to 'true')
    ## DEBUG, TRACE or ALL is required to see query strings
    log4j.logger.org.hibernate.SQL=debug
  4. 以下の行をコメント アウトします。

    ## log hibernate prepared statement parameter values. Note: due to caching in net.sf.hibernate.type.NullableType, requires restart to take effect
    ## TRACE or ALL is required to see parameter values
    ## Note that log4j.appender.confluencelog.Threshold (or other appenders) also must be TRACE or ALL to see any trace messages in the logs
    log4j.logger.org.hibernate.type=trace
  5. 以下の行を DEBUG  から TRACE に変更します。

    log4j.appender.confluencelog.Threshold=TRACE
  6. Confluence を起動します。

このログ出力レベルは、Confluence が再起動しても保持されます。SQL ログ出力は非常に冗長であるため、追加情報が不要になったら、log4j.properties の変更を戻すことをおすすめします。

(warning) 注: AO テーブルの SQL ログについては、DEBUG レベルに次のクラスを挿入します。

最終更新日 2021 年 8 月 30 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.