What

프로그램을 배포완료한 상태에서 에러 발생시 로그정보 cloud watch에 기록하기

 

Why

서비스를 배포하면 고객이 서비스를 이용하는 과정에서 어떤 오류를 겪는지 확인하기 위해

 

How

 

IAM에게 CloudWatchAgentServerPolicy 정책 인가

 

ec2 서버에 CloudWatch agent 설치

wget https://s3.amazonaws.com/amazoncloudwatch-agent/ubuntu/amd64/latest/amazon-cloudwatch-agent.deb
sudo dpkg -i -E ./amazon-cloudwatch-agent.deb

CloudWatch Logs 그룹 및 스트림 생성

 

 

에이전트 구성 파일 편집

sudo vi /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json

구성 파일에서 로그 섹션 파일을 찾아서 편집합니다

 

로그 구성에는 수집할 고으 파일의 경로, 로그 그룹 및 스트림 이름등을 지정합니다.

"logs": {
  "logs_collected": {
    "files": {
      "collect_list": [
        {
          "file_path": "/var/log/syslog",
          "log_group_name": "my-logs",
          "log_stream_name": "my-stream"
        }
      ]
    }
  }
}

에이전트 재시작

sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a stop
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a start

이제 ec2 인스턴스에서 콘솔에 출력되는 내용이 /var/log/syslog 파일에 저장되고

 

Amazon CloudWatch 에이전트를 통해 해당 로그가 CloudWatch Logs의 "my-logs" 로그 그룹의 "my-stream" 로그 스트림으로 전송 됩니다.

+ Recent posts