ข้ามไปเนื้อหาหลัก
จัดการ & มอนิเตอร์· ~16 นาที· อัปเดตล่าสุด

CloudWatch

metrics, alarms, logs, dashboards เฝ้าดูสุขภาพระบบ

เปรียบเทียบ: CloudWatch เหมือนแผงหน้าปัดและระบบแจ้งเตือนในรถยนต์

คอยบอกความเร็ว (Metrics) ประวัติการวิ่ง (Logs) และส่งเสียงเตือน (Alarms) เมื่อเครื่องยนต์ร้อนเกินไปหรือน้ำมันใกล้หมด

พื้นฐานที่ควรรู้: เมื่อเรารันเซิร์ฟเวอร์บน Cloud เราจะไม่เห็นตัวเครื่องจริงๆ จึงไม่รู้ว่าพัดลมดังไหม เครื่องค้างหรือเปล่า เราเลยต้องมีบริการที่คอย "จับตาดู (Monitor)" ทรัพยากรของเราตลอด 24 ชั่วโมง

Amazon CloudWatch เป็นบริการ Monitoring (ตรวจตรา) ตัวหลักของ AWS ที่ทำหน้าที่เก็บ Metrics (ตัวเลขวัดประสิทธิภาพ) เช่น CPU หรือปริมาณ Request, เก็บ Logs (ประวัติการทำงาน), สร้างหน้าต่าง Dashboard (กราฟสรุปผล) และตั้ง Alarm (การแจ้งเตือน) เพื่อส่งข้อความหรือสั่งการระบบอัตโนมัติเมื่อค่าต่างๆ ผิดปกติ

มองเห็นระบบ 3 มุม: metrics, logs, และใครทำอะไร

CloudWatchmetrics + alarms + logs
CloudTrailใครเรียก API อะไร
AWS Configการตั้งค่าเปลี่ยนไหม

CloudWatch = สุขภาพ/ประสิทธิภาพ · CloudTrail = audit การกระทำ · Config = สถานะการตั้งค่า

  • Metrics & Alarms — คอยจับตาดูและสั่งงานอัตโนมัติ (เช่น CPU พุ่ง -> สั่งเพิ่มเครื่อง หรือส่ง SMS เตือน)
  • Logs — รวบรวมบันทึกการทำงาน (Log) จาก EC2 หรือ Lambda มาไว้ที่ศูนย์กลางเพื่อค้นหาและวิเคราะห์ (มีฟีเจอร์ CloudWatch Logs Insights ไว้เขียน Query หากรองรอย)
  • Dashboards — สร้างกราฟสวยๆ รวมตัวเลขสำคัญไว้ดูภาพรวมในหน้าเดียว
  • Custom Metrics — นอกเหนือจากที่ AWS เตรียมให้ เราสามารถเขียนโค้ดส่งค่าที่เราอยากวัดเองเข้าไปได้ (เช่น จำนวนคนล็อกอิน, ปริมาณ RAM ที่เหลืออยู่)
{
  "Type": "AWS::CloudWatch::Alarm",
  "Properties": {
    "AlarmName": "HighCPUAlarm",
    "MetricName": "CPUUtilization",
    "Namespace": "AWS/EC2",
    "Statistic": "Average",
    "Period": 300,
    "EvaluationPeriods": 1,
    "Threshold": 80,
    "ComparisonOperator": "GreaterThanThreshold"
  }
}
💻 Hands-on: โค้ดสร้าง CloudWatch Alarm แจ้งเตือน CPU เกิน 80%

สรุป Key Takeaways

  • CloudWatch = metrics + alarms + logs + dashboards
  • Alarm สั่ง scaling/แจ้งเตือนอัตโนมัติเมื่อค่าผิดปกติ

คำถามที่พบบ่อย

CloudWatch metric พื้นฐานของ EC2 ไม่มีอะไรบ้าง (จุดหลอกข้อสอบ)

Memory และ disk space ที่ใช้ — AWS มองไม่เห็นข้างใน OS จึงให้แค่ CPU, network, disk I/O ถ้าต้องการ memory/disk utilization ต้องติดตั้ง CloudWatch Agent เอง — โจทย์ "ทำไมไม่เห็น memory metric" ออกซ้ำแล้วซ้ำอีก

CloudWatch Logs กับ Metrics ใช้ยังไงให้เชื่อมกัน

ส่ง log เข้า CloudWatch Logs แล้วสร้าง metric filter นับ pattern ที่สนใจ (เช่น จำนวนคำว่า ERROR) เป็น custom metric แล้วตั้ง alarm บนมัน — ครบวงจร log → metric → alarm → action (SNS แจ้งเตือน/Auto Scaling)

CloudWatch Alarm ทำอะไรได้มากกว่าส่งอีเมล

Action ได้หลายแบบ: แจ้งผ่าน SNS, สั่ง Auto Scaling เพิ่ม/ลดเครื่อง, สั่ง EC2 action (stop/reboot/recover) — โดยเฉพาะ recover ที่ย้ายเครื่องไป host ใหม่เมื่อ hardware มีปัญหา — และทำ composite alarm รวมหลายเงื่อนไขกัน alert รัวได้

ลองทำ Quiz ท้ายบท

คำถามแนวข้อสอบของโมดูลนี้ 5 ข้อ · เฉลยทันที

อ่านจบแล้วอย่าลืมทำเครื่องหมาย