Cloud Monitoring


Amazon CloudWatch

Dịch vụ monitoring và observability trung tâm của AWS. Hiểu đơn giản: CloudWatch là “mắt thần” theo dõi toàn bộ hạ tầng AWS của bạn.

Metric là biến số cần theo dõi (CPUUtilization, NetworkIn…). Mỗi AWS service tự động đẩy metric về CloudWatch.

Lưu ý thi: EC2 mặc định gửi metric mỗi 5 phút. Muốn nhanh hơn (1 phút) thì bật Detailed Monitoring nhưng tốn thêm tiền.


Các Metric quan trọng cần nhớ

ServiceMetric tiêu biểu
EC2CPU, Disk I/O, Network I/O
EBSDisk Read/Write
RDSCPU, free storage, IOPS
S3Số request, latency, lỗi
LambdaSố lần gọi, lỗi, thời gian chạy
BillingTotal Estimated Charge (chỉ ở us-east-1)

Mở rộng: EC2 không tự báo cáo RAM hay disk usage — đây là custom metric, phải tự cài agent để push lên.


CloudWatch Alarms

Khi metric vượt ngưỡng → tự động kích hoạt hành động.

3 trạng thái Alarm: OKINSUFFICIENT_DATAALARM

Hành động có thể làm:

  • EC2 Actions: stop / terminate / reboot / recover instance
  • SNS notification: gửi email, SMS, kích hoạt Lambda…
  • Auto Scaling: scale out/in EC2

Ví dụ hay gặp thi: Tạo billing alarm → CloudWatch Billing metric → SNS gửi email cảnh báo chi phí.


CloudWatch Logs

Thu thập log tập trung từ nhiều nguồn:

  • Elastic Beanstalk, ECS, Lambda → tự động gửi log
  • EC2phải cài CloudWatch Agent + cấu hình IAM đúng
  • On-premises server → cũng dùng được CloudWatch Agent
  • Route53 → log DNS query
  • CloudTrail → log theo filter

Quan trọng: Mặc định EC2 không tự gửi log lên CloudWatch. Phải có agent.

Retention (thời gian lưu log) có thể tùy chỉnh — từ 1 ngày đến vĩnh viễn.


CloudWatch Events → Amazon EventBridge

EventBridge là phiên bản nâng cấp của CloudWatch Events (cùng khái niệm, tên mới).

3 loại Event Bus:

  • Default bus — event từ AWS services
  • Partner bus — từ bên thứ 3: Zendesk, DataDog, Auth0…
  • Custom bus — từ ứng dụng của bạn

2 cách trigger:

  • Schedule (Cron): chạy theo lịch, ví dụ mỗi giờ gọi Lambda
  • Event Pattern: phản ứng theo sự kiện, ví dụ root user login → gửi SNS alert

AWS CloudTrail

Ghi lại toàn bộ API call trong AWS account — ai làm gì, lúc nào, từ đâu.

Bật mặc định, áp dụng cho tất cả Region.

Khi nào dùng: resource bị xóa bất ngờ → tra CloudTrail trước tiên.

Phân loại Events

Management Events (mặc định bật):

  • Các thao tác với resource: tạo subnet, attach policy, tạo trail…
  • Phân biệt Read Events (xem) và Write Events (thay đổi)

Data Events (mặc định tắt — vì volume rất lớn):

  • S3 object-level: GetObject, PutObject, DeleteObject
  • Lambda Invoke API

CloudTrail Insights — phát hiện hoạt động bất thường:

  • Đột biến IAM actions
  • Vượt service limit
  • Lỗi provisioning
  • Cách hoạt động: phân tích baseline từ management events → phát hiện pattern lạ → gửi alert về S3 + EventBridge

Retention: CloudTrail lưu 90 ngày. Muốn lưu lâu hơn → export sang S3 rồi query bằng Athena.


AWS X-Ray

Dịch vụ distributed tracing — theo dõi luồng request đi qua nhiều service.

Dùng khi nào: ứng dụng microservice phức tạp, khó debug bằng log thông thường.

Những gì X-Ray giải quyết:

  • Bottleneck ở đâu trong chuỗi service?
  • Service nào đang bị throttle?
  • Request nào gặp lỗi / timeout?
  • SLA có đang được đảm bảo không?
  • User nào đang bị ảnh hưởng?

Visualize: X-Ray tạo Service Map — bản đồ trực quan các service và dependency.


Amazon CodeGuru

Dùng machine learning để review code và profile performance.

CodeGuru ReviewerCodeGuru Profiler
Mục tiêuReview code tĩnhPhân tích runtime
Giai đoạnDevelopmentProduction
Phát hiệnSecurity bug, inefficiency, best practiceCPU/memory bottleneck, chi phí tốn kém
Hỗ trợJava, PythonAWS + on-premises

Tích hợp: GitHub, Bitbucket, CodeCommit.


Service Health Dashboard vs Personal Health Dashboard

Service Health DashboardPersonal Health Dashboard
Phạm viToàn bộ AWS, mọi RegionChỉ resource của bạn
Nội dungTrạng thái chung các serviceẢnh hưởng trực tiếp đến account
URLstatus.aws.amazon.comphd.aws.amazon.com
Tính năng thêmRSS feedProactive alert, lịch maintenance

Phân biệt để thi: Health Dashboard = nhìn toàn cảnh AWS. Personal Health Dashboard = nhìn vào chính mình.


Tóm tắt nhanh để thi

Tình huốngDùng gì
Theo dõi CPU, RAM, metricCloudWatch Metrics
Cảnh báo khi vượt ngưỡngCloudWatch Alarms
Thu thập log từ EC2CloudWatch Logs + Agent
Chạy Lambda theo lịchEventBridge (Schedule)
Ai đã xóa resource?CloudTrail
Phát hiện hành vi lạ trong accountCloudTrail Insights
Debug microservice chậmX-Ray
Review code tự độngCodeGuru Reviewer
Tối ưu CPU/memory appCodeGuru Profiler
AWS đang có sự cố gì?Service Health Dashboard
Sự cố đó ảnh hưởng tôi không?Personal Health Dashboard