[aws] cloudwatchを使用してサーバのプロセス数などの状況を確認する方法
AWSのcloudwatchを使用することでサーバのCPUやメモリ使用率などを取得して監視することができるが、実はサーバのプロセス数などの状況も確認することができる
Cloudwatchの設定はSystemManagerからPushするので、SystemManagerの設定とCloudwatch設定ファイルの設定を行っておくこと
[aws] SystemManagerを使用してcloudwatchをインストールする方法
目次
SystemManagerのパラメータストア上にあるCloudwatch設定ファイルを編集
SystemManagerのパラメータストア上にあるCloudwatch設定ファイルにアクセス
編集をクリック
値の欄に収集されるメトリックなどが書かれているので
“metrics_collected”: {の直下に
"procstat": [ { "pattern": "mysqld", "measurement": [ "pid_count" ] }, { "pattern": "php-fpm", "measurement": [ "pid_count" ] }, { "pattern": "apache", "measurement": [ "pid_count" ] } ],
を追記する
上記はプロセスの起動に使用するコマンドラインで「mysqld」「php-fpm」「apache」が含まれているそれぞれのプロセス数(pid_count)を取得するように設定されている。
上記のpatternの部分は「exe(プロセス名)」や「pid_file(実行ファイル名)」に変更することも可能。
取得できる情報も「pid_count」だけでなく、それぞれのプロセスのCPU使用率やメモリ使用率、プロセスIDなども取得できる
取得できるメトリックスは
を参照のこと
Cloudwatchに設定ファイルをPush
SystemManagerのRun Commandを使用してCloudwatchに先程作成した設定ファイルを流し込む
SystemManagerを開き、Run Commandを選択、さらにRun Commandを選択
検索窓にAmazonCloudWatch-ManageAgentを入力し、選択
実行オプションの「Optional Configuration Location」の項目に先程保存したCloudwatch設定ファイル名を指定
あとはターゲットを選択して、実行をクリック
Cloudwatchでメトリクス確認
Cloudwatchが正常にメトリクスを収集してくれていれば、Cloudwatchのメトリクスに表示されているはず