WebOTX Manual V10.2 (第4版) 目次を表示 |
以前に比べて応答が遅くなったことをここでは遅延として扱いますが、システム構築段階で試行させてみたら考えられない程遅かった、という場合も本記述を参考にしてください。遅延としては主に以下のケースが考えられます。
運用アシスタント機能により通常よりオペレーション処理が遅くなったことを検出できます。 スローダウンが検出されると以下のメッセージがイベントログ・syslogに通知されます。
OTX20110100 オペレーション<zzz>のスローダウンを検出しました。current:平均実行時間=<xxx>秒。normal:平均実行時間=<www>秒。プロセスグループ=<vvv>。 ObjectName=<yyy> OTX20110100 The Operation <zzz> get late. Average of current time is <xxx>s. Average of normal time is <www>s. The Process Group is <vvv>. The ObjectName is <yyy>詳細は、 [ 構築・運用 > ドメインの構築 > TPシステム > 運用アシスタント > スローダウン障害の検出 ] を参照してください。
OTX20120100 オペレーション<zzz>がスローダウン状態からノーマル状態に遷移しました。current:平均実行時間=<xxx>秒。normal:平均実行時間=<www>秒。プロセスグループ=<vvv>, ObjectName=<yyy> OTX20120100 The Operation <zzz> transit from slowdown to normal. Average of current time is <xxx>s. Average of normal time is <www>s. The Process Group is <vvv>. The ObjectName is <yyy>オペレーションのスローダウンを検出してから「スローダウンの継続を監視する間隔」を超えてなお、スローダウン状態が継続していると、以下のメッセージがイベントログ・syslogに出力され、自動で3秒間隔5回のスタックトレース採取をしてアプリケーションログに出力します。スローダウンが一時的なものでなく、恒久的な障害となっている可能性があります。復旧に向けた対処を検討してください。
OTX20110200 オペレーション<zzz>の長期にわたるスローダウン状態を検出しました。current:平均実行時間=<xxx>秒。normal:平均実行時間=<www>秒。スローダウン継続時間=<uuu>分。プロセスグループ名=<vvv>, ObjectName=<yyy> OTX20110200 The Operation <zzz> is slow for a long time. Average of current time is <xxx>s. Average of normal time is <www>s. Duration of slow is <uuu>m. The Process Group is <vvv>. The ObjectName is <yyy>
統合運用管理ツールやオペレーションジャーナルでオペレーションの処理時間を調査し、システム運用に影響を与えるような致命的な遅延となっていないか確認してください。
最近AP置換を行っているというのであればAPの処理時間に変化がないか確認してください。オペレーションジャーナルを採取することにより、各APでの処理時間の統計や推移を確認することができます。
[ 構築・運用 >
ドメインの構築 >
TPシステム >
統計情報(オペレーションジャーナル) ]
を参照してください。統合運用管理ツールで確認する場合は[統計情報]の該当オペレーションの統計属性をご覧ください。該当オペレーションのアプリケーショングループ起動からの、レスポンス時間(キュー待ち時間を含む)、実行時間(キュー待ち時間を含まない)、CPU時間の総計を確認できます。また、オペレーションまたはプロセスグループの「運用アシスタント」タブにある「スローダウン継続時間」が0以上となっていないか確認してください。通常は-1が表示されます。
オペレーションジャーナルで処理件数や稼動スレッド数を確認できます。また、quewrtコマンドでリクエストの受付件数やキュー滞留数の確認が出来ます。キュー滞留については [ キュー滞留によるレスポンス遅延への対応 ] を参照してください。
psコマンド、topコマンド、sarコマンド、タスクマネージャ、パフォーマンスモニタを使用することにより、サーバでのCPU使用率やメモリ使用率を確認してください。
APのCPU使用率は統合運用管理ツールでも確認できます。プロセスグループの「動作情報」タブにある「プロセス情報」を参照してください。この情報はオペレーションジャーナルからも確認できます。
オペレーションジャーナルを採取して各APでの処理時間を確認することにより、対象APを特定できます。
オペレーションジャーナルを採取すればAPだけでなくオペレーションも特定できます。
運用アシスタントのスローダウン検出メッセージからもオペレーションを特定できます
オペレーションジャーナルによりオペレーションのCPU使用時間を確認してください。実行時間に比べてCPU使用時間が少ない場合は、データベース・ACOSなどのバックエンド処理やネットワークに原因がある可能性があります。ユーザモードCPU使用時間が増加しているのであれば、サーバAPの処理に問題がある可能性があります。カーネルモードCPU使用時間が多い場合は、リソース使用の効率化等を検討してください。CPU時間が増加している場合は、[ CPU使用率の過剰への対応 ] を参考にして下さい。
また、統合運用管理ツールから、レスポンス時間(キュー待ち時間を含む)、実行時間(キュー待ち時間を含まない)、CPU時間を確認してください。レスポンス時間に比べて実行時間が少ない場合は、キュー滞留により遅延しています。詳細は、[ キュー滞留によるレスポンス遅延への対応 ] を参照してください。
「長期にわたるスローダウン状態」が検出された場合は、自動で3秒間隔5回のスタックトレース採取をしてアプリケーションログに出力します。アプリケーションログに記録されたスタックトレースからから処理内容を調査してください。
サーバ側に実装したユーザロジックに問題がある場合は問題のあるオペレーションを一時的に閉塞して運用する方法が考えられます。
遅延した原因が、データベースやOSなどにあれば、そちらの障害を復旧させてください。サーバ側に実装したユーザロジックに問題がある場合は、該当プロセスグループを再起動することで一時的に復旧する可能性もありますが、アプリケーションの処理を見直す必要があります。運用アシスタントによりスローダウンが検出されたものの、一時的な遅延であり、何も処理を行わずとも正常状態に復帰する場合があります。この場合は、再起動のなどの復旧処置は必要ありません。「長期にわたるスローダウン」が検出されている場合は、恒久的な障害に陥っている可能性がありますので、原因を調査し、サーバ側に実装したユーザロジックに問題がある場合はプロセスグループの再起動を検討してください。
サーバ側に実装したユーザロジックに問題がある場合はその処理を見直す必要があります。
リクエスト数増加が見込まれる場合はあらかじめプロセス数またはスレッド数を増やしておいてください。
DNS解決が遅いために遅延していた、という事例が稀にあります。nslookupで応答時間を確認してください。可能であればホスト名をIPに変えて試してください。