~~NOCACHE~~ ## CloudWatchAgentによるプロセス監視 CloudwatchAgentによるプロセス監視設定例になります。 以下の公式ドキュメントより、procstatプラグインでプロセス監視を試してみました。 https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/CloudWatch-Agent-procstat-process-metrics.html ## procstat 向けの CloudWatch エージェントの設定 [metrics]-[metrics_collected]セクションに、以下の書式を追記します。 [httpd]プロセスを例に、プロセス数をカウントしています。 ### pid_file による設定 #### 設定例(抜粋) "procstat": [ { "pid_file": "var/run/httpd/httpd.pid", "measurement": [ "pid_count" ], "metrics_collection_interval": 60 } ] #### メトリクス出力先 %%すべて > CWAgent > ImageId,InstanceId,InstanceType,pid_finder,pidfile%% #### 設定例(全体) ハイライト行が追加する該当行になります。 --> 開く# { "agent": { "metrics_collection_interval": 60, "run_as_user": "root" }, "logs": { "logs_collected": { "files": { "collect_list": [ { "file_path": "/var/log/httpd/access_log", "log_group_name": "access_log", "log_stream_name": "{instance_id}" } ] } } }, "metrics": { "append_dimensions": { "AutoScalingGroupName": "${aws:AutoScalingGroupName}", "ImageId": "${aws:ImageId}", "InstanceId": "${aws:InstanceId}", "InstanceType": "${aws:InstanceType}" }, "metrics_collected": { "collectd": { "metrics_aggregation_interval": 60 }, "disk": { "measurement": [ "used_percent" ], "metrics_collection_interval": 60, "resources": [ "*" ] }, "mem": { "measurement": [ "mem_used_percent" ], "metrics_collection_interval": 60 }, "statsd": { "metrics_aggregation_interval": 60, "metrics_collection_interval": 10, "service_address": ":8125" }, "procstat": [ { "pid_file": "var/run/httpd/httpd.pid", "measurement": [ "pid_count" ], "metrics_collection_interval": 60 } ] } } } <-- ### exe による設定 #### 設定例(抜粋) "procstat": [ { "exe": "httpd", "measurement": [ "pid_count" ], "metrics_collection_interval": 60 } ] #### メトリクス出力先 すべて > CWAgent > ImageId,InstanceId,InstanceType,exe,pid_finder #### 設定例(全体) ハイライト行が追加する該当行になります。 --> 開く# { "agent": { "metrics_collection_interval": 60, "run_as_user": "root" }, "logs": { "logs_collected": { "files": { "collect_list": [ { "file_path": "/var/log/httpd/access_log", "log_group_name": "access_log", "log_stream_name": "{instance_id}" } ] } } }, "metrics": { "append_dimensions": { "AutoScalingGroupName": "${aws:AutoScalingGroupName}", "ImageId": "${aws:ImageId}", "InstanceId": "${aws:InstanceId}", "InstanceType": "${aws:InstanceType}" }, "metrics_collected": { "collectd": { "metrics_aggregation_interval": 60 }, "disk": { "measurement": [ "used_percent" ], "metrics_collection_interval": 60, "resources": [ "*" ] }, "mem": { "measurement": [ "mem_used_percent" ], "metrics_collection_interval": 60 }, "statsd": { "metrics_aggregation_interval": 60, "metrics_collection_interval": 10, "service_address": ":8125" }, "procstat": [ { "exe": "httpd", "measurement": [ "pid_count" ], "metrics_collection_interval": 60 } ] } } } <-- {{tag>AWS CloudWatchAgent CloudWatch}}