アプリケーション パフォーマンスを監視する

システム管理

このページの内容

お困りですか?

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

コミュニティに質問

アプリ監視によって、インスタンスにおけるアプリの動作内容をより深く把握できます。これは、特定のアプリに関する問題のトラブルシューティング、またはアプリが全体的なパフォーマンスや安定性の低下の一因になっているかどうかを判断する際に役立ちます。

監視をセットアップする

APM を Jira に接続する前に、次を完了します。

  • JMX エクスポーターを設定する

  • サイトで JMX とアプリ指標を有効にする 

このページの説明では、Prometheus を使用することを前提としています。どのアプリケーション パフォーマンス監視 (APM) ソリューションを使用する場合でも、手順はほぼ変わりません。

1. JMX エクスポーターを設定する

エクスポーターは JMX MBeans を取得して、Prometheus に適した形式に変換します。また、Prometheus が接続する HTTP エンドポイントをホストします。Prometheus JMX エクスポーターの詳細についてご確認ください。

Prometheus を使用しない場合は、使用する APM ソリューションで必要となるエクスポーターまたはエージェントを確認する必要があります。たとえば、NewRelic 用の Java エージェントなどです。

エクスポーターをインストールするには、次の手順に従います。

  1. GitHub リポジトリから、Prometheus JMX エクスポーター jar ファイルをダウンロードします。

    $ curl -L https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.16.1/jmx_prometheus_javaagent-0.16.1.jar > jmx-exporter.jar
  2. Java エクスポーター用の設定ファイルを作成します。サンプル ファイルはリポジトリからダウンロードできます。設定オプションの詳細については、README.md をご参照ください。

  3. jar と設定の各ファイルを各アプリケーション ノードにコピーします (ローカル ホーム ディレクトリが適しています)。

  4. Jira を 1 つのノードで停止します。

  5. 次のシステム プロパティを追加して、Jira に JMX エクスポーターの場所を指示します。ご利用のサイトでこれを行う方法を確認するには「起動時にプロパティとオプションを設定」をご参照ください。

    -javaagent:<full-path-to-jmx-exporter-jar>=<port>:<full-path-to-jmx-exporter-config.yml>

    初期設定では、JMX エクスポーターはポート 8080 を使用します。Jira または別のアプリがこのポートを使用している場合は、別のポートをエクスポーター用に指定する必要があります。
     

  6. Jira を起動します。

  7. エクスポーターが動作していることを確認するには、localhost:<jmx-exporter-port> に移動します。指標の出力が表示されるはずです。

Jira をクラスターで実行する場合は、このステップを残りのすべてのノードに対して繰り返します。ローリング リスタートを実行すると、ダウンタイムを回避できます。

JMX エクスポーター エンドポイントをネットワークの外部に公開しないようにする、または適切なステップに従って、セキュリティを確保します。 

2. アプリ監視を Jira で有効にする

アプリ監視は JMX (Java Management Extensions) を使用するため、JMX 監視も有効にする必要があります。初期設定では JMX とアプリの両監視は有効になっていますが、管理者によって無効になっている場合もあります。 

アプリ監視を有効にするには、次の手順に従います。

  1. [] > [システム] > [監視] の順に移動します。

  2. [JMX 監視] が有効になっていることを確認します。

  3. [アプリ監視] が有効になっていることを確認します。

JMX 監視を Jira に以前セットアップしている場合は、操作不要です。追加のアプリ監視指標は、既存のアプリ指標と同じ方法で公開されます。監視対象の完全なリストについては「アプリ指標の参照」を参照することをお勧めします。

既存の APM (アプリ パフォーマンス監視) ソリューションがない場合は、Prometheus と Grafana の開始に関するアトラシアンのガイドをご参照ください。

JMX 監視は、サイトのパフォーマンスに影響を与える可能性があります。多くの場合は重大な影響ではありませんが、インスタンスのパフォーマンスや安定性に問題が生じた場合は、JMX とアプリの両監視を無効にできます。

アプリ監視を無効にする

アプリ監視を無効にするには、次の手順に従います。

  1. [] > [監視] の順に移動します。

  2. [アプリ監視] を無効にします。

無効にすると、Jira によるアプリ固有の指標の出力やログへの書き込みが停止されます。JMX を完全に無効にする場合は、JMX 監視も無効にできます。 

アプリ名を識別する

アプリ指標には、アプリの表示名ではなくプラグイン キーが含まれています。たとえば、com.atlassian.troubleshooting.plugin-jira は、Jira 用のトラブルシューティングとサポート ツール システム アプリのプラグイン キーです。 

アプリ名を確認するには、次の手順に従います。

  1. <base-url>/plugins/servlet/upm/osgi に移動します。

  2. プラグイン キーを [バンドル メタデータの検索] フィールドに入力します。

  3. 名前やベンダーなど、プラグインの詳細が返されます。

プラグイン キーの検索結果を示す OSGi 管理画面

アプリに関するすべての詳細を返す次の REST エンドポイント /rest/plugins/1.0/<plugin-key>/summary も使用できます。 

オプションのタグを有効にする

アプリ ベンダーは、パフォーマンス問題のトラブルシューティング時に役立つ追加メタデータを含められます。初期設定では、これらのタグは含まれていません。

atlassian.metrics.optional.tags システム プロパティによって、指標の追加タグを表示できます。

atlassian.metrics.optional.tags.<metric-name>=<tag-key1>,<tag-key2>

たとえば、完全な指標名が sampleApp.asset.loadtime である場合に、アプリ ベンダーがコンテンツ タイプに関する追加情報を出力するタグを含めたとします。

atlassian.metrics.optional.tags.sampleApp.asset.loadtime=sampleApp-type

これによって、アプリ ベンダーは正確な指標とタグ名を伝えられます。

トラブルシューティング

out of memory (メモリ不足) エラー

監視はアプリの外部で行われるため、インスタンスのパフォーマンスや安定性に対する重大な影響はないと予想されます。問題が発生した場合は、JMX とアプリの各監視を無効にできます。

OOME (メモリ不足エラー) が監視エージェントが原因で発生した場合は、setenv ファイルの JVM_MINIMUM_MEMORY(-xmx) を増やします。「Jira アプリ メモリの容量を増やす」をご参照ください。

アプリ監視アーリー アクセス プレビュー

アーリー アクセス プログラムに参加した場合は、EAP 監視エージェントと関連するシステム プロパティをアップグレード前に削除する必要があります。削除しないと、Jira の起動に失敗、または問題が発生する可能性があります。

最終更新日 2022 年 7 月 19 日

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

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