atop ツールを使用して、EC2 Linux インスタンスのプロセスの使用状況の履歴統計を取得するにはどうすればよいですか?

最終更新日: 2021 年 10 月 25 日

Amazon Elastic Compute Cloud (Amazon EC2) インスタンスでリソースの使用履歴をモニタリングしたいと考えています。atop ツールを使ってこれを行うにはどうしたらいいですか?

簡単な説明

atop ツールは、後で分析するためにリソースの使用履歴を記録するパフォーマンスモニタリングツールです。このツールでは、リアルタイムのレポート作成も可能です。各プロセスおよびスレッドの CPU 使用率、メモリ消費、ディスク I/O の使用状況を取得できます。atop ツールはバックグラウンドで (サービスとして) アクティブなままで、統計を記録し、長期的なサーバー分析を可能にします。統計情報は、デフォルトで 28 日間保存されます。

解決方法

atop をインストールする

過去の確認と分析のために atop レポートログを読む

atop ツールは、/var/log/atop にログファイルを作成します。これらのファイルの名前は「atop_ccyymmdd」の形式で指定されます。たとえば、「atop_20210902」は2021年9月2日のレコードです。

ログファイルにアクセスするには、atop -r atoplogfilepath でコマンドを実行します。atoplogfilepath を、atop ログファイルへのフルパスに置き換えます。コマンドとログファイルを次の例に示します。

atop -r /var/log/atop/atop_20210902 

ATOP - ip-172-20-139-91                2021/09/02  17:03:44                ----------------                 3h33m7s elapsed
PRC |  sys    6.51s  |  user   7.85s  |  #proc    103  |  #tslpi    81 |  #tslpu     0  |  #zombie    0  |  #exit      0  |
CPU |  sys     0%  |  user      3%  |  irq       0%  |  idle    197% |  wait      0%  |  ipc notavail  |  curscal   ?%  |
cpu |  sys     0%  |  user      1%  |  irq       0%  |  idle     98% |  cpu000 w  0%  |  ipc notavail  |  curscal   ?%  |
cpu |  sys     0%  |  user      1%  |  irq       0%  |  idle     98% |  cpu001 w  0%  |  ipc notavail  |  curscal   ?%  |

前述の出力例では、最初に記録されたスナップショットは 2021/09/02 17:03:44 でした。次のスナップショットに進むには、キーボードの「t」キーを押します。前のスナップショットに戻るには、「T」(大文字の 「t」)キーを押します。

特定のタイムスロットを分析するには、「b」 キーを押し、日付と時刻を入力します。atop ツールは、[新しい時刻を入力] 変数で指定された時刻にスキップします。

NET |  lo      ----  |  pcki       2  |  pcko       2  |  sp    0 Mbps |  si    0 Kbps  |  so    0 Kbps  |  erro       0  |
Enter new time (format [YYYYMMDD]hhmm):
  PID              TID              RDDSK              WRDSK             WCANCL              DSK             CMD        1/4

ショートカットキー

ショートカットキーを押すと、さまざまな統計を表示できます。ショートカットキーの例を以下に示します。

ショートカットキー 説明
g 汎用情報 (デフォルト)。
m メモリの詳細。
d ディスクの詳細。
n ネットワークの詳細。このキーは netatop カーネルモジュールがインストールされている場合にのみ機能します。
c プロセスごとの完全なコマンドライン

次のショートカットキーを使用して、プロセスのリストをソートできます。

ショートカットキー 並べ替え
C CPU アクティビティ。
M メモリ消費量。
D ディスクアクティビティ。
N ネットワークアクティビティ。このキーは netatop カーネルがインストールされている場合にのみ機能します。
A 最もアクティブなシステムリソース (自動モード)。

h キーを押すと、ヘルプドキュメントが表示されます。

atopsar コマンド

atopsar コマンドは、従来の UNIX の sar コマンドに似た機能です。atopsar コマンドを使用すると、さまざまなシステムアクティビティレポートを生成できます。

atopsar コマンドは、色分けと(要求に応じて)マーカーを使用して、リソースの使用率を強調します。クリティカルな使用率は赤でマークされ、ほぼクリティカルな使用率はシアンでマークされます。

次の例では、フラグ「-c」を使用して、システムの現在の CPU 使用率に関するレポートが生成されます。次の例は、1 秒間隔の 2 つの結果を示しています。

$ atopsar -c 1 2

ip-172-20-139-91  4.14.238-182.422.amzn2.x86_64  #1 SMP Tue Jul 20 20:35:54 UTC 2021  x86_64  2021/09/02

-------------------------- analysis date: 2021/09/02 --------------------------

18:50:16  cpu  %usr %nice %sys %irq %softirq  %steal %guest  %wait %idle  _cpu_
18:50:17  all     0     0    0    0        0       0      0      0   200
            0     0     0    0    0        0       0      0      0   100
            1     0     0    0    0        0       0      0      0   100
18:50:18  all     0     0    0    0        0       0      0      0   200
            0     0     0    0    0        0       0      0      0   100
            1     0     0    0    0        0       0      0      0   100

atopsar コマンドは、履歴データを分析することもできます。たとえば、次のコマンドを実行して、当日の 13 時 00 分 (-b) から始まり、13 時 35 分 (-e) に終わるすべてのレポート (-A) を生成します。

atopsar -A -b 13:00 -e 13:35

前日のファイルを読み込むには、「-r」オプションを使用し、ログファイル名を指定します。


この記事は役に立ちましたか?


請求に関するサポートまたは技術サポートが必要ですか?