CloudWatch Agent
를 서버에 설치했다면, CloudWatch Agent 구성 파일
을 생성해야 에이전트를 시작할 수 있습니다.CloudWatch Agent
를 설치한 서버로 접근합니다.
CloudWatch Agent
구성 파일은 /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json
으로 저장하겠습니다.
$ vim /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json
내용은 AWS 공식 문서를 참고하여 아래와 같이 작성하였습니다.
{
"agent": {
"metrics_collection_interval": 10,
"logfile": "/opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log"
},
"metrics": {
"namespace": "MyCustomNamespace",
"metrics_collected": {
"cpu": {
"resources": [
"*"
],
"measurement": [
{
"name": "cpu_usage_idle",
"rename": "CPU_USAGE_IDLE",
"unit": "Percent"
},
{
"name": "cpu_usage_nice",
"unit": "Percent"
},
"cpu_usage_guest"
],
"totalcpu": false,
"metrics_collection_interval": 10,
"append_dimensions": {
"customized_dimension_key_1": "customized_dimension_value_1",
"customized_dimension_key_2": "customized_dimension_value_2"
}
},
"disk": {
"resources": [
"/",
"/tmp"
],
"measurement": [
{
"name": "free",
"rename": "DISK_FREE",
"unit": "Gigabytes"
},
"total",
"used"
],
"ignore_file_system_types": [
"sysfs",
"devtmpfs"
],
"metrics_collection_interval": 60,
"append_dimensions": {
"customized_dimension_key_3": "customized_dimension_value_3",
"customized_dimension_key_4": "customized_dimension_value_4"
}
},
"diskio": {
"resources": [
"*"
],
"measurement": [
"reads",
"writes",
"read_time",
"write_time",
"io_time"
],
"metrics_collection_interval": 60
},
"swap": {
"measurement": [
"swap_used",
"swap_free",
"swap_used_percent"
]
},
"mem": {
"measurement": [
"mem_used",
"mem_cached",
"mem_total"
],
"metrics_collection_interval": 1
},
"net": {
"resources": [
"eth0"
],
"measurement": [
"bytes_sent",
"bytes_recv",
"drop_in",
"drop_out"
]
},
"netstat": {
"measurement": [
"tcp_established",
"tcp_syn_sent",
"tcp_close"
],
"metrics_collection_interval": 60
},
"processes": {
"measurement": [
"running",
"sleeping",
"dead"
]
}
},
"append_dimensions": {
"ImageId": "${aws:ImageId}",
"InstanceId": "${aws:InstanceId}",
"InstanceType": "${aws:InstanceType}",
"AutoScalingGroupName": "${aws:AutoScalingGroupName}"
},
"aggregation_dimensions": [
[
"ImageId"
],
[
"InstanceId",
"InstanceType"
],
[
"d1"
],
[]
],
"force_flush_interval": 30
},
"logs": {
"logs_collected": {
"files": {
"collect_list": [
{
"file_path": "/opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log",
"log_group_name": "amazon-cloudwatch-agent.log",
"log_stream_name": "amazon-cloudwatch-agent.log",
"timezone": "UTC"
},
{
"file_path": "/opt/aws/amazon-cloudwatch-agent/logs/test.log",
"log_group_name": "test.log",
"log_stream_name": "test.log",
"timezone": "Local"
}
]
}
},
"log_stream_name": "my_log_stream_name",
"force_flush_interval": 15
}
}
CloudWatch Agent 구성 파일
은 agent
, metrics
, logs
세 섹션으로 나뉘어져 있는 JSON
파일입니다.
agent
: 에이전트의 전체 구성에 대한 필드
가 포함되어 있습니다.
마법사를 사용하는 경우 agent 섹션이 생성되지 않습니다.
metrics
: 수집하여 CloudWatch
에 게시할 사용자 지정 지표를 지정
합니다.
에이전트를 사용하여 로그만 수집하는 경우 파일에서 metrics 섹션을 생략할 수 있습니다.
logs
: CloudWatch Logs
에 게시되는 로그 파일을 지정
합니다.
각 섹션의 항목에 대한 자세한 설명은 AWS 공식 문서를 참고하세요.