質問
⚠️ この事例は公開されてから1年以上経過しています。 情報が古い可能性がありますので、ご注意ください。
🕓 事例公開日 : 2025-06-24
【背景】
Accel-Mart Plus Mediumプラン Gear1環境で、3月21日から30日の期間にap02サーバのCPU使用率が通常2%から約20%まで上昇し、3月30日にOutOfMemoryによる再起動が発生した。再起動後は正常に戻ったが、4月23日14:10より同様の事象が再発している。CPU使用率以外のリソースも上昇している状況。Q1.
メモリを消費している原因について調査してもらえますか?Q2.
こちらで確認できる調査方法があれば教えてください。Q3.
ヒープダンプおよびスレッドダンプを取得するためのツールを提供してもらえますか?回答
A1.
該当時間帯のメモリ使用率とCPU使用率の上昇を調査した結果、両方とも同じ時間帯で発生しており、相関関係があることを確認しました。調査の結果、メモリ使用率とCPU使用率の上昇は、受付リクエスト数の増加による負荷が原因と考えられます。該当時間のリクエストログを確認したところ、以下のリクエストに処理時間がかかっている傾向が見られました:
・https://example.com/foo/bar/*
3月21日と4月23日の両方で、最も長時間リクエストに時間がかかっていたログは同様の内容でした。該当時間帯の処理や操作について確認していただけますと幸いです。
A2.
メモリを消費している処理を特定する一般的なアプローチは以下の通りです:・JVMのヒープダンプ、スレッドダンプを取得し、オブジェクトの配置状況や生成元を解析する
・処理の前後でメモリ使用量を取得し、差分を比較する
ただし、これらの詳細な調査・解析については、弊社サポート範囲外となりますため、具体的な手順についてはご案内いたしかねます。
今回の事象については以下の手順で調査を行うことができます:
-
リソース表示を見て、メモリへの負荷が上昇している時間を特定する
メモリ使用率とCPU使用率の上昇し始めたタイミングが同じであることを確認し、同じであれば同じ処理による影響である可能性が高い -
「im-log-stats」によるログの解析を行う
「期間別統計」で該当時間付近のリクエスト処理時間を確認する
詳細は以下のドキュメントをご参照ください:
https://aws.accel-mart.com/support_inquiry_guide/texts/inquiry_process/support_category_decision/failure_analysis.html#root-cause-analysis -
該当時間付近のリクエストログから負荷がかかっている処理を特定する
リクエストの受付時間を昇順でソートし、ページ処理時間を10秒以上でフィルタリングして負荷がかかっている処理を特定する
A3.
以下のFAQを参照してください。
Accel-Mart Plus 環境でヒープダンプやスレッドダンプを取得する方法はありますか?https://cloud.intra-mart.support/hc/ja/articles/50801164299545