Thuta Learning
ရှာဖွေရန်
IntermediateDevOpsbeginner

CloudWatch Monitoring

စိတ်လျှော့ပါ။ ဒီခန်းကို စာအုပ်လိုမဟုတ်ဘဲ စကားပြောသလိုပဲ၊ နားလည်လွယ်အောင် ရှင်းပါမယ်။

ဒီခန်းပြီးရင် ဘာတတ်သွားမလဲ

  • CloudWatch Monitoring ကို ကြောက်စရာမလိုအောင် နားလည်မယ်
  • ကိုယ်တိုင် AWS CLI/Console ကို run ကြည့်တတ်မယ်
  • Real project ထဲမှာ ဒီ concept ကို ချက်ချင်း အသုံးချတတ်မယ်

ခဏလေး ဒီလိုပဲ စဉ်းစားကြည့်

CloudWatch Metric က EC2/RDS/ALB စတဲ့ resource တွေက automatic ပို့ပေးတဲ့ performance data (CPU utilization, network traffic, disk I/O) ပါ — dashboard ကနေ graph အနေနဲ့ ကြည့်နိုင်ပါတယ်။ CloudWatch Logs ကတော့ application/system log ကို centralize သိမ်းထားနိုင်တဲ့ service ပါ — EC2 instance ရာနဲ့ချီရှိရင် log တစ်ခုချင်းစီကို instance အလိုက် သွားကြည့်စရာမလိုဘဲ, CloudWatch Logs ထဲမှာ search/filter လုပ်လို့ရပါတယ်။ CloudWatch Alarm ကတော့ metric ကို threshold (ဥပမာ - CPU > 80%) သတ်မှတ်ထားပြီး ကျော်ရင် notification (email, SNS) ပို့ပေးနိုင်ပါတယ် — Auto Scaling trigger အဖြစ်လည်း သုံးလို့ရပါတယ်.

လက်တွေ့ scenario နဲ့ ချိတ်ကြည့်မယ်

EC2 instance ရဲ့ CPU utilization metric ကို CloudWatch dashboard မှာ graph အနေနဲ့ ကြည့်နိုင်ပါတယ် — CPU 80% ကျော်ရင် email ပို့ပေးမယ့် Alarm setup လုပ်ထားရင် (ASG lesson ကလို auto-scale trigger အဖြစ်လည်း သုံးနိုင်ပါတယ်), server overload ဖြစ်ခင် ကြိုသိနိုင်ပါတယ်။ Application error log ကို CloudWatch Logs ထဲ ပို့ထားရင်, error message ကို keyword search လုပ်ပြီး debug လုပ်နိုင်ပါတယ်.

အတူတူ ကြည့်မယ်

bash
# Create an alarm: notify if CPU > 80% for 5 minutes
aws cloudwatch put-metric-alarm \
  --alarm-name high-cpu-tutorial \
  --metric-name CPUUtilization \
  --namespace AWS/EC2 \
  --statistic Average \
  --period 300 \
  --threshold 80 \
  --comparison-operator GreaterThanThreshold \
  --dimensions Name=InstanceId,Value=i-0123456789abcdef0 \
  --evaluation-periods 1
You should see
$ aws cloudwatch describe-alarms --alarm-names high-cpu-tutorial --query 'MetricAlarms[].StateValue'
["OK"]

၅ မိနစ် စမ်းကြည့်

EC2 instance (Basic chapter) ရဲ့ CPU utilization metric ကို CloudWatch Console ထဲ ကြည့်ကြည့်ပါ — CPU > 70% ဖြစ်ရင် alert ပို့မယ့် Alarm တစ်ခု setup လုပ်ကြည့်ပါ။

သတိလေးတစ်ချက်

CloudWatch Alarm ကို production critical metric (database connection count, error rate) အတွက် အနည်းဆုံး setup လုပ်ထားပါ — 'ဒါလောက်တော့ ဖြစ်မှာမဟုတ်ဘူး' ဆိုတဲ့ metric ကတိုင် production incident ဖြစ်တတ်ပါတယ်။

ဒီနေရာမှာ လူအများမှားတတ်တယ်

  • CloudWatch Alarm ကို setup လုပ်ပေမယ့် notification (SNS topic/email) ကို ချိတ်ဆက်ဖို့ မေ့ခြင်း — alarm trigger ဖြစ်ပေမယ့် ဘယ်သူမှ မသိတော့ပါ
  • Log retention period ကို 'never expire' ချထားခြင်း — log volume ကြီးလာလို့ storage cost တိုးလာနိုင်ပါတယ်

အခု ကိုယ်တိုင် စမ်းကြည့်

EC2 instance (Basic chapter) ရဲ့ CPU utilization metric ကို CloudWatch Console ထဲ ကြည့်ကြည့်ပါ — CPU > 70% ဖြစ်ရင် alert ပို့မယ့် Alarm တစ်ခု setup လုပ်ကြည့်ပါ။

You'll know it worked when: $ aws cloudwatch describe-alarms --alarm-names high-cpu-tutorial --query 'MetricAlarms[].StateValue' ["OK"]

CloudWatch Monitoring | Thuta Learning