GC ログを使用した Jira Server のパフォーマンスのトラブルシューティング

お困りですか?

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

コミュニティに質問

プラットフォームについて: Server と Data Center のみ - この記事は、サーバーおよびデータセンター プラットフォームのアトラシアン製品にのみ適用されます。

このページで紹介している手順は Jira 7.3 以前でのみ使用できます。

Jira 7.4 以降ではガベージ コレクション ログを改善し、自動生成されるようにしました。生成されたログは <installation-directory>/logs で確認できます。

Jira Software 7.4.x リリース ノート

Other than that, all the recommended parameters below are no longer supported in Java 9 and upwards, as the Unified JVM Logging has been introduced. So, if your Java version is newer than Java 8, please follow the steps here:

Garbage Collection Log Settings for Jira when using Java Version 11


ガベージ コレクション

JIRA applications are robust applications that rarely require in-depth garbage collection (GC) tuning. However, on large-scale installations, GC tuning can improve the performance of JIRA applications. Analysis of GC logs can also assist in troubleshooting performance problems with a JIRA application. Starting from JIRA 7.4, GC logs are generated automatically, and you can find them in <installation-directory>/logs.

診断

詳細ガベージコレクションは、Java がガベージを収集している日時、このプロセスの所要時間、解放されたメモリ量を示すログステートメントを生成します。ガベージ コレクションは、以降のプロパティを JVM に渡すことで有効化できます。詳細については「起動時にプロパティおよびオプションを設定する」ドキュメントをご参照ください。

The Xloggc parameter must use the full path for the location of the GC logs, as in the below examples. We recommend putting them in the $JIRA_HOME/log directory as when generating a Support Zip they will be included. If your directory is different than the default, please use that directory.

パラメーター -XX:+PrintGCCause は Java 1.7.0_45 で導入され、このバージョンよりも前のバージョンを使用している場合は動作しません。このフラグを使用する前に、インスタンスで使用している Java のバージョンをご確認ください。

Using Linux/Unix (Java up to 8):

-XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+PrintGCCause -Xloggc:<PATH_TO_GC_LOGS>/atlassian-jira-gc-%t.log -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=20M

Using Linux/Unix (Java 9 and later):

-Xlog:gc*:file=<PATH_TO_GC_LOGS>/atlassian-jira-gc-%t.log:tags,time,uptime,level:filecount=5,filesize=20M

Using Windows (Java up to 8):

-Xlog:gc*:file=<PATH_TO_GC_LOGS>\atlassian-jira-gc-%t.log:tags,time,uptime,level:filecount=5,filesize=20M
-XX:+PrintGCDetails

-XX:+PrintGCDateStamps
-XX:+PrintGCTimeStamps
-XX:+PrintGCCause
-Xloggc:<PATH_TO_GC_LOGS>\atlassian-jira-gc-%t.log
-XX:+UseGCLogFileRotation
-XX:NumberOfGCLogFiles=5
-XX:GCLogFileSize=20M

Using Windows (Java 9 and later):

-Xlog:gc*:file=<PATH_TO_GC_LOGS>\atlassian-jira-gc-%t.log:tags,time,uptime,level:filecount=5,filesize=20M

We advise setting the <PATH_TO_GC_LOGS> the same as Jira's installation directory (catalina_home), eg. /opt/atlassian/jira/logs. This allows the GC logs to be included in Support Zips.

Where to set the parameters

You may follow the Setting properties and options on startup guide to set the parameters. We advise filling the JVM_GC_ARGS or JVM_SUPPORT_RECOMMENDED_ARGS if the first's not present.

Be mindful that some parameters may already be present elsewhere in the setenv.sh/setenv.bat. We advise removing them from elsewhere to avoid duplicates and confusion on later editions fo the file.

分析

  1. これらのオプションを追加して Jira アプリケーションを再起動すると、-Xloggc パラメーターで指定したログにメモリの使用状況の情報が記録されます。これを GCViewer などのツールを使用して分析できます。
  2. GC チューニングのプラクティスや原則についての完全なガイドを「ガベージ コレクション (GC) チューニング ガイド」で確認できます。
  3. Java の VisualVM をインストールして、Jira アプリケーションを実行しているプロセスをバインドするために使用できます。これを使用して、GC による CPU の使用状況やヒープの使用状況を分析できます。各ヒープ領域の視覚的な情報を提供する visualGC プラグインのインストールが推奨されます。
  4. GC をより理解するために、Java Garbage Collection Distilled などのサードパーティによるブログを確認することもおすすめします。 

GC ログに加えて、ヒープ ダンプを分析に使用できます。詳細については「ヒープ ダンプで Jira サーバーの OutofMemory エラーを分析する」をご確認ください。

推奨事項

It is unwise to provide general recommendations for all situations - there is no substitute for an in-depth assessment using analysis tools. Atlassian recommends engaging the services of an Atlassian Partner for performance analysis of your JIRA applications and the environment it runs in.

パフォーマンスの問題の診断の詳細な情報については「Jira サーバーのパフォーマンスの問題のトラブルシューティング」ドキュメントをご確認ください。



説明このページでは、GC ログの分析を使用した、Jira アプリケーションのパフォーマンスの問題のトラブルシューティングについて説明します。
最終更新日 2021 年 8 月 4 日

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

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