[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のメトリクスに表示されているはず