๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ‘ฉ‍๐Ÿ’ป TECH

[TECH] Cloudwatch Logs๋กœ ๋กœ๊ทธ ํŒŒ์ผ ์ˆ˜์ง‘ํ•˜๊ธฐ

by may_yy 2023. 7. 26.

[ํ‹ฐ๋Œ] ํ‹ฐ๋Œ Cloudwatch Logs๋กœ ๋กœ๊ทธ ํŒŒ์ผ ์ˆ˜์ง‘ํ•˜๊ธฐ
 
์•ˆ๋…•ํ•˜์„ธ์š” ํ‹ฐํ”Œ์˜ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž ๊น€์œ ์ •์ž…๋‹ˆ๋‹ค :)
์˜ค๋Š˜์€ ํ‹ฐํ”Œ ์„œ๋น„์Šค์— ๋กœ๊ทธ๋ฅผ ๊ธฐ๋กํ•  ์ˆ˜ ์žˆ๋Š” Cloudwatch Logs ๊ธฐ์ˆ ์— ๋Œ€ํ•ด ์†Œ๊ฐœํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.


๐Ÿ‘ฉ‍๐Ÿ’ป Cloudwatch Logs๋ž€?

Cloudwatch Logs๋Š” Amazon Web Services์˜ ์„œ๋น„์Šค ์ค‘ ํ•˜๋‚˜๋กœ, ์‹œ์Šคํ…œ ๋ฐ AWS ๋ฆฌ์†Œ์Šค์—์„œ ์ƒ์„ฑ๋œ ๋กœ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘, ๋ชจ๋‹ˆํ„ฐ๋ง, ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.
 
๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๋กœ๊ทธ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ : AWS ๋ฆฌ์†Œ์Šค(EC2 ์ธ์Šคํ„ด์Šค, RDS ์ธ์Šคํ„ด์Šค ๋“ฑ)์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋กœ๊ทธ๋ฅผ ์‰ฝ๊ฒŒ ์ˆ˜์ง‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋กœ๊ทธ ๋ฐ์ดํ„ฐ ๋ชจ๋‹ˆํ„ฐ๋ง : ๋กœ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ํ•„ํ„ฐ๋งํ•˜์—ฌ ์‹œ์Šคํ…œ์˜ ๋™์ž‘์„ ์‹ค์‹œ๊ฐ„ ํŒŒ์•…ํ•˜๊ณ  ์ด์ƒ ํ˜„์ƒ์„ ๊ฐ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋กœ๊ทธ ๋ฐ์ดํ„ฐ ์ €์žฅ : ์ˆ˜์ง‘ํ•œ ๋กœ๊ทธ๋ฅผ ์•ˆ์ •์ ์œผ๋กœ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ์ €์žฅ๋œ ๋กœ๊ทธ ๋ฐ์ดํ„ฐ๋Š” ๋‚˜์ค‘์— ๋ถ„์„, ๊ฒ€์ƒ‰, ๋ณด๊ด€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋กœ๊ทธ ๋ฐ์ดํ„ฐ ๋ถ„์„ : ๊ฒ€์ƒ‰ ์ฟผ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋กœ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ํ•„ํ„ฐ๋งํ•˜๊ณ  ์ฟผ๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ฒฝ๊ณ  ๋ฐ ์•Œ๋ฆผ : ๋กœ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํŠน์ • ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•  ๊ฒฝ์šฐ ์•Œ๋ฆผ์„ ๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ‘ฉ‍๐Ÿ’ป ๋กœ๊น…์ด๋ž€? ์™œ ํ•„์š”ํ•œ๊ฐ€์š”?

๋กœ๊ทธ(Log)๋ž€ ์‹œ์Šคํ…œ ๋˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ๋ฐœ์ƒํ•˜๋Š” ์ด๋ฒคํŠธ๋‚˜ ๋™์ž‘์˜ ๊ธฐ๋ก์„ ๋งํ•ฉ๋‹ˆ๋‹ค.
 
์šด์˜ ์„œ๋ฒ„๋ฅผ ๊ด€๋ฆฌํ•˜๊ฒŒ ๋˜๋ฉด ๊ฐ€์žฅ ๋งŽ์ด ํ•˜๋Š” ์ผ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋กœ๊ทธ๋ฅผ ์ฝ๋Š” ์ž‘์—…์ž…๋‹ˆ๋‹ค. ๋กœ๊ทธ๋Š” ๊ทธ ๋‹น์‹œ ์–ด๋–ค ์ผ์ด ์ผ์–ด๋‚ฌ๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ์ค‘์š”ํ•œ ๋‹จ์„œ๋กœ ๋ฌธ์ œ ํ•ด๊ฒฐ์„ ํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์ผํ•œ ๋‹จ์„œ๊ฐ€ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๋กœ๊ทธ๋“ค์„ ๋ฐ˜๋“œ์‹œ ๊ธฐ๋กํ•˜๊ณ  ์žˆ์–ด์•ผ ํ•˜๋ฉฐ ์ผ์ • ๊ธฐ๊ฐ„ ๋™์•ˆ ์œ ์‹ค๋˜์ง€ ์•Š๋„๋ก ์ž˜ ๊ด€๋ฆฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.


๐Ÿ‘ฉ‍๐Ÿ’ป ์„ค์น˜ ๋ฐฉ๋ฒ•

1. IAM ์„ค์ •
IAM Role์„ ์ƒ์„ฑํ•˜์—ฌ CloudWatchAgentServerPolicy๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  ์›ํ•˜๋Š” EC2 ์ธ์Šคํ„ด์Šค์— ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.

IAM Role - ์ •์ฑ… ์ถ”๊ฐ€

 
2. CloudWatch agent ์„ค์น˜

sudo curl -O https://s3.amazonaws.com/amazoncloudwatch-agent/ubuntu/amd64/latest/amazon-cloudwatch-agent.deb

*์„ค์น˜ ๋ฐฉ๋ฒ•์€ ubuntu ๊ธฐ์ค€์ž…๋‹ˆ๋‹ค.
 
url์„ ํ†ตํ•ด ์„ค์น˜ ํŒŒ์ผ(.deb)์„ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

CloudWatch

 
3. ์„ค์น˜ ํŒŒ์ผ(.deb)์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. 

sudo dpkg -i amazon-cloudwatch-agent.deb

 
4. ์„ค์ • ํŒŒ์ผ์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค. ํ•„์ž๋Š” config.json ํŒŒ์ผ์„ ํ†ตํ•ด ์„ค์ • ํŒŒ์ผ์„ ์ž‘์„ฑํ•  ์˜ˆ์ •์ด๋ฏ€๋กœ default choice๋ฅผ ์„ ํƒํ•˜๊ณ  ๋„˜์–ด๊ฐ‘๋‹ˆ๋‹ค. 

sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard

 
5. ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์„ค์ • ํŒŒ์ผ์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

vim config.json

  • file path : ์ˆ˜์ง‘ํ•˜๋ ค๋Š” ๋กœ๊ทธ ํŒŒ์ผ ๊ฒฝ๋กœ ์ง€์ •
  • log_group_name : ๋กœ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  cloudwatch logs๊ทธ๋ฃน์˜ ์ด๋ฆ„์„ ์ง€์ •. ๋กœ๊ทธ ๊ทธ๋ฃน์€ ์—ฌ๋Ÿฌ ๋กœ๊ทธ ์ŠคํŠธ๋ฆผ์„ ํ•˜๋‚˜๋กœ ๋ชจ์•„๋‘” ๊ณณ.
  • log_stream_name : ๋กœ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  cloudwatch logs ์ŠคํŠธ๋ฆผ์˜ ์ด๋ฆ„์„ ์ง€์ •. ๋กœ๊ทธ ์ŠคํŠธ๋ฆผ์€ ๋ฐ์ดํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š”๋ฐ ์‚ฌ์šฉ. deploy๋ผ๋Š” ์ด๋ฆ„์˜ ๋กœ๊ทธ ์ŠคํŠธ๋ฆผ์— ๋กœ๊ทธ๋ฅผ ์ €์žฅํ•˜๊ฒ ๋‹ค๋Š” ์˜๋ฏธ.

 
6. ์„ค์ • ํŒŒ์ผ์„ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค. 

sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -c file:/opt/aws/amazon-cloudwatch-agent/bin/config.json -s

 


โ—๏ธ์„ค์ • ํŒŒ์ผ์„ ์ ์šฉํ–ˆ๋Š”๋ฐ๋„ ๋กœ๊ทธ ํŒŒ์ผ์ด ์•ˆ์˜ฌ๋ผ๊ฐ€๊ณ  ์žˆ๋‹ค๋ฉด? 

  • Cloudwatch agent์˜ ์ž์ฒด์ ์ธ ๋กœ๊ทธํŒŒ์ผ์„ ์ฝ์–ด์™€ ๋ฌธ์ œ๋ฅผ ํŒŒ์•…ํ•ด ๋ด…๋‹ˆ๋‹ค.
tail -f /opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log

  • AWS ์ž๊ฒฉ ์ฆ๋ช… ํŒŒ์ผ์ด ์กด์žฌํ•˜์ง€ ์•Š๋‹ค๊ณ  ๋‚˜์™€์žˆ์Šต๋‹ˆ๋‹ค.
  • CloudWatchFullAccess ์ •์ฑ…์„ ๊ฐ€์ง€๋Š” IAM ์‚ฌ์šฉ์ž๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ด๋•Œ ์ƒ์„ฑ๋œ access-key์™€ secret-access-key๋Š” ๊ผญ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค!

AWS

  • ์‚ฌ์šฉ์ž๋ฅผ ์ƒ์„ฑํ–ˆ์œผ๋‹ˆ ๋‹ค์Œ๊ณผ ๊ฐ™์ด /root/.aws/credentials ํŒŒ์ผ์— access-key์™€ secret-access-key ์ •๋ณด๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
sudo mkdir /root/.aws
sudo touch /root/.aws/credentials
sudo chmod 600 /root/.aws/credentials

 

vim secret-access-key

* ์•„๋ž˜ ๋‚ด์šฉ ์ž‘์„ฑ ํ›„ ์ €์žฅ

[default]
aws_access_key_id = {access-key}
aws_secret_access_key = {secret-access-key}

[AmazonCloudWatchAgent]
aws_access_key_id = {access-key}
aws_secret_access_key = {secret-access-key}

7. ์ค‘์ง€ํ•˜๊ณ  ์žฌ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

/opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -m ec2 -a stop

๊ฐœ๋ฐœ

/opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -m ec2 -a start

 
 
8. status ๊ฐ’์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

/opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -m ec2 -a status

status๊ฐ€ "running"์œผ๋กœ ์ •์ƒ ์ž‘๋™๋œ ๊ฒƒ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

 
9. ๊ฒฐ๊ณผ

๋กœ๊ทธ


๐Ÿ‘ฉ‍๐Ÿ’ป ๋งˆ์น˜๋ฉฐ

๋กœ๊น… ์‹œ์Šคํ…œ ๊ตฌ์ถ•์— ๋Œ€ํ•œ ๊ธด ๊ธ€์„ ์ฝ์–ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!
 
QA๋ฅผ ์ง„ํ–‰ํ•˜๋ฉด์„œ ์—๋Ÿฌ ์žก๊ธฐ๊ฐ€ ์–ด๋ ค์›Œ ๋กœ๊น…์˜ ํ•„์š”์„ฑ์„ ๋ชธ์†Œ ๋Š๊ผˆ๋Š”๋ฐ์š”.
์—ฌ๋Ÿฌ๋ถ„๋“ค๋„ ์ž์‹ ์˜ ์„œ๋น„์Šค์— ๋งž๋Š” ๋กœ๊น… ์‹œ์Šคํ…œ์„ ๊ตฌ์ถ•ํ•ด ๋ณด๋‹ค ๋น ๋ฅด๊ฒŒ ๋””๋ฒ„๊น…ํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์…จ์œผ๋ฉด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค!
 
์—ฌ๋Ÿฌ๋ถ„์˜ ๋Œ“๊ธ€๊ณผ ํ”ผ๋“œ๋ฐฑ์„ ๊ธฐ๋‹ค๋ฆฌ๋ฉฐ, ๋‹ค์Œ์— ๋” ๋งŽ๊ณ  ์œ ์šฉํ•œ ์ •๋ณด๋กœ ๋Œ์•„์˜ค๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค๐Ÿ˜„


๐Ÿ‘ฉ‍๐Ÿ’ป ์ฐธ๊ณ 

https://sweetysnail1011.tistory.com/30

 

[AWS CloudWatch] 16-2. CloudWatch Agent - ๋กœ๊ทธ ๊ธฐ๋ก

* ์ด์ „ ๊ธ€ - CloudWatch ์—์ด์ „ํŠธ ์ง€ํ‘œ ์ƒ์„ฑ ใ…‡ CloudWatch ์—์ด์ „ํŠธ ๋กœ๊ทธํŒŒ์ผ ์ˆ˜์ง‘ > ์ด์ „๊นŒ์ง€์˜ ๋ฐฉ์‹์€ ์ง€ํ‘œ ํ™•์ธ์ด ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, ์ด๋ฅผ ๋กœ๊ทธ๋กœ ๋‚จ๊ธฐ๋Š” ๊ฒƒ์€ ๋ถˆ๊ฐ€๋Šฅ > config.jsonํŒŒ์ผ์— ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฝ”๋“œ๋ฅผ

sweetysnail1011.tistory.com

https://velog.io/@mohai2618/CloudWatch-Logs-์ ์šฉํ•˜๊ธฐ

 

CloudWatch Logs ์ ์šฉํ•˜๊ธฐ

Aws CloudWatch Logs ์ ์šฉํ•ด๋ณด์ž

velog.io