アプリケーション問題切り分けマップの設定
以下のセクションでは、アプリケーション問題切り分けマップを設定する方法について説明します。
apmdevops102jp
以下のセクションでは、アプリケーション問題切り分けマップを設定する方法について説明します。
注:
拡張機能とパフォーマンスの向上には、APM Team Center のワークフロー を使用することをお勧めします。2
2
アプリケーション問題切り分けマップは、アプリケーションを構成するコンポーネントをグラフィカルに表示したもので、アプリケーションの稼働状況とエラーを表示します。このマップは、Introscope メトリック、エラーおよびイベントのパフォーマンスと分析から自動的に生成されます。定義に従い、ビジネス セントリックな観点からアプリケーションを表現します アプリケーション問題切り分けマップを使用すれば、ユーザの環境内の各アプリケーションの構造やアプリケーション間の関係を視覚的にすぐ把握でき、現在の問題や潜在的な問題を特定し、切り分ける助けとなります。
アプリケーション問題切り分けマップの外観と使用法の詳細については、「Workstation での問題切り分け」を参照してください。
Introscope エージェントはビジネス トランザクションとエージェントを検出し、両者の依存関係を検出します。その後、エージェントはこの情報を Enterprise Manager にデータとしてレポートします。Enterprise Manager は、APM データベース内にデータを格納し、Workstation にデータを送信します。Workstation は、このデータを[マップ]タブにアプリケーション問題切り分けマップとして表示します。
以下を構成できます。
- エージェントによってアプリケーション問題切り分けマップ データを収集するかどうか。
- マップを描画するために、Introscope によってフロントエンドまたはビジネス サービスのデータをサンプリングする割合。「トランザクション サンプリング」を参照してください。
- アプリケーション問題切り分けマップ データを APM データベース内に保存する期間。「マップ エレメント エイジング」を参照してください。
- アプリケーション問題切り分けマップ データを APM データベースから廃棄するかどうか、およびその頻度。「アプリケーション問題切り分けマップ データの廃棄」を参照してください。
トランザクション サンプリング
Introscope では、
トランザクション サンプリング
と呼ばれるテクニックを使用して、アプリケーション問題切り分けマップ表示のデータを提供します。エージェントの開始後、Introscope は、(デフォルトで)最初の 100 個のトランザクションを取得し、フロントエンドまたはビジネス トランザクションとその依存関係の初期マップを描画します。その後、10 個のうちの 1 個のトランザクションのみがマップへのデータ サポートを継続するレベルになるまで、サンプリングするトランザクション数を徐々に減らします。トランザクションが 1 万個になるたびに、このパターンが繰り返されます。サンプリングレートは、
IntroscopeAgent.profile
内の以下のプロパティを編集して調整できます。- introscope.agent.tracer.sampling.maxrate
- introscope.agent.tracer.sampling.initial.period
- introscope.agent.tracer.sampling.reset.period
これらのプロパティを調整して、マップ表示をサポートするトランザクションの数を増やすと、オーバーヘッドに影響を与える可能性があるので、注意してください。
マップ エレメント エイジングの設定
接続用データがエイジアウトするか、APM データベースから廃棄されると、エージェントはフロントエンドとビジネス サービスおよびその依存関係を再検出します。Workstation はアプリケーション問題切り分けマップにこのデータを表示します。
エージェントによってアプリケーション問題切り分けマップ データを収集できるように指定した後で、エージェントによるデータ収集の頻度を構成できます。たとえば、以下の頻度でアプリケーション問題切り分けマップ データを収集するようにエージェントを構成できます。
- 環境に頻繁に変更が加えられる場合、24 時間ごとに 1 回。
- 環境への変更の頻度が少ない場合、1 週間に 1 回。
また、Enterprise Manager がマップにデータを配信する期間を構成できます。たとえば、エージェントによって検出されたデータを 1 週間または 1 か月間表示できます。この期間は 2 つのマップ時間範囲プロパティ「エイジング時間」と「ウィンドウ時間」に基づきます。
エイジングは、アプリケーション問題切り分けマップ エレメントの特性です。Introscope がフロントエンドまたはビジネス トランザクション用のデータを受信しなくなったとき、マップ エレメントの状態をエイジングと呼びます。エイジング時間は、Workstation がアプリケーション問題切り分けマップ内のエレメントの表示を継続する時間です。この時間が期限切れになったとき、エレメントはエージェント キャッシュから削除され、アプリケーション問題切り分けマップに aged と表示されます エイジング時間は introscope.apm.data.agingTime プロパティで設定します。デフォルト値は 1 日です。
時間ウィンドウは、エイジング エレメントがマップから表示されなくなるまで Workstation がエレメントを表示する時間です。このオプションは introscope.apm.data.timeWindow プロパティで設定します。デフォルト値は 3 日です。
たとえば、以下のようなデフォルト設定を仮定します。
アプリケーション A はアプリケーション問題切り分けマップのフロントエンドで、アプリケーション B と依存関係にあります。エージェントによってアプリケーション B のデータが継続的にレポートされ、アプリケーション B はマップ内に正常に表示されます。データがアプリケーション B からレポートされなくなると、エイジング時間とウィンドウ時間の計測が開始されます。1 日後、アプリケーション B のマップ ノードが aged と表示されます。3 日後、アプリケーション B のマップ ノードはマップに表示されなくなります。
考慮事項:
- timeWindowには、agingTime の期間が含まれます。
- timeWindow と agingTime を同じ期間に設定すると、マップ エレメントを aged と表示できません。timeWindow の期間が終了すると、これらは表示されなくなります。
- timeWindow を agingTime よりも大きな値に設定した場合は、aged のマップ エレメントは agingTime の期間の経過後に表示されなくなります。
- agingTime と timeWindow については、組織がアプリケーションに対して追加や変更を行う頻度に基づいて値を選択します。この値によって、エージェントと Enterprise Manager のオーバーヘッドが増減する可能性があります。設定する値が低いほど、マップに表示されるアプリケーションの依存関係はリアルタイムなものになります。高い値を設定すると、マップに現在のアプリケーションの依存関係が表示されます。
重要:
クラスタ環境では、agingTime または timeWindow のデフォルト プロパティ値への変更は、MOM およびすべてのコレクタに適用される必要があります。以下の手順に従います。
- <EM_Home>/config ディレクトリにある IntroscopeEnterpriseManager.properties ファイルを開きます。
- introscope.apm.data.agingTime の値を変更する場合
- エージェントを停止します。
- Enterprise Manager をシャットダウンします。
重要:introscope.apm.data.agingTime プロパティの値を変更する場合は、「アプリケーション問題切り分けマップのエイジング時間設定を小さくする場合の影響」を参照してください。 - introscope.apm.data.agingTime プロパティを設定します。デフォルト値は 1 日です。値は 1 分より小さくすることはできません。
- introscope.apm.data.timeWindowプロパティを設定します。デフォルト値は 3 日です。値は 1 分より小さくすることはできません。
- IntroscopeEnterpriseManager.properties ファイルを保存して閉じます。
- introscope.apm.data.agingTime プロパティを変更した場合は、エージェントを再起動します。
- Enterprise Manager を再起動します。
- <EM_Home>/logs ディレクトリ内のマップ データ エイジング プロパティに関するする Enterprise Manager ログ ファイル メッセージを確認します。例:11/23/09 12:02:13 PM PST [INFO] [Manager] [ The APM Data property : introscope.apm.data.agingTime set to value : [ PropertyWithTimeUnit : 1 Min]]
アプリケーション問題切り分けマップのエイジング時間設定を小さくする場合の影響
IntroscopeEnterpriseManager.properties
ファイル内のプロパティ introscope.apm.data.agingTime
の値を小さくする場合、CA Technologies では、履歴データへの予期しない影響を回避するために、アプリケーション問題切り分けマップ データをクリーンアップすることをお勧めします。エイジング時間を小さくすると、マップ表示に示されるデータ サンプルも少なくなります。その結果、エージェントによる Enterprise Manager へのデータ レポートが原因で、APM データベース内のデータに基づく誤った表示が行われる可能性があります。データベースからデータをクリーンアップすることで、この問題を回避できます。データをクリーンアップするには、PostgreSQL クライアントを使用する必要があります。このクライアントは PostgreSQL サイト(http://www.pgadmin.org)からダウンロードできます。
PostgreSQL クライアントを使用してデータベースをクリーンアップする方法
- 以下の SQL ステートメントを実行します。truncate apm_edge;プロパティintroscope.apm.data.agingTimeの値を増やす場合は、このような予期しない影響はありません。データベースのクリーンアップが必要になるのは、プロパティの値を減らす場合のみです。
エイジング関連のプロパティが履歴ビューに与える影響
アプリケーション問題切り分けマップで履歴データを表示する際、以下の概念に注意してください。
- 履歴期間の開始点と終点の設定にかかわらず、アプリケーション問題切り分けマップに表示されるデータは常に、最低でもintroscope.apm.data.timeWindowプロパティに設定された期間を含みます。例:
- 履歴期間の開始日と終了日の間を 10 日に設定し、introscope.apm.data.timeWindowを 3 日に設定した場合、マップには 10 日間全体のデータが表示されます。
- 履歴期間の開始日と終了日の間を 2 日に設定し、introscope.apm.data.timeWindowを 3 日に設定した場合、マップには 3 日分のデータが表示されます。これは、2 日間の終了日と同じ日を最後とする 3 日分です。手動で設定された履歴期間のほうが小さい場合でも、introscope.apm.data.timeWindowプロパティに設定されている期間が、マップに表示される最小期間になります。
- マップ エレメントのエイジングは、エイジング時間が履歴ウィンドウ後に発生したかのように、introscope.apm.data.agingTimeプロパティに設定された期間を経過します。例:
- introscope.apm.data.agingTimeが 1 日に設定され、履歴期間が 10 日に設定されている場合、エージェントによって期間の最終日(1 日)の間このエレメントがレポートされないと、マップ エレメントが aged と表示されます。