Chuyển đến nội dung chính

AWS CloudWatch: Hướng dẫn toàn diện về giám sát đám mây

Nắm vững giá, nhật ký và bộ lọc số liệu của AWS CloudWatch. Học cách xây dựng bảng điều khiển tùy chỉnh và cấu hình cảnh báo để có khả năng quan sát toàn diện đám mây.
· 15 phút đọc

Khám phá cùng AI

Trong nhiều năm làm việc với hạ tầng AWS, tôi nhận ra rằng khả năng quan sát tài nguyên đám mây là ranh giới giữa xử lý sự cố chủ động và chữa cháy bị động. 

Amazon CloudWatch làm đúng điều đó: Đây là hệ thần kinh trung tâm của môi trường AWS của bạn, cung cấp khả năng giám sát, ghi nhật ký và quan sát toàn diện trên toàn bộ hạ tầng.

Tôi sẽ hướng dẫn bạn qua các khả năng của CloudWatch, từ giám sát số liệu cơ bản đến vận hành nâng cao với AI. Kết thúc hướng dẫn này, bạn sẽ hiểu cách dùng CloudWatch để giám sát hiệu quả tài nguyên AWS, tối ưu chi phí và xử lý sự cố trước khi chúng ảnh hưởng tới người dùng.

Nếu bạn mới làm quen với AWS, tôi khuyến nghị học khóa AWS Cloud Technology and Services của chúng tôi.

AWS CloudWatch là gì?

Trước khi đi vào phần thực hành, hãy cùng tìm hiểu CloudWatch là gì và nó phù hợp như thế nào trong hệ sinh thái AWS rộng lớn.

CloudWatch là nền tảng quan sát hợp nhất của AWS, thu thập, giám sát và phân tích dữ liệu từ tài nguyên đám mây và ứng dụng của bạn. Dịch vụ cho phép bạn giám sát toàn bộ ngăn xếp như ứng dụng, hạ tầng, mạng và dịch vụ, đồng thời dùng dữ liệu cảnh báo, nhật ký và sự kiện để thực hiện hành động tự động.

Nền tảng hoạt động trên môi trường gốc AWS và kịch bản lai, hỗ trợ khối lượng công việc trên AWS, các nhà cung cấp đám mây khác và trung tâm dữ liệu on-premises. CloudWatch Agent thu thập dữ liệu đo đạc từ mọi môi trường, cung cấp một bảng điều khiển hợp nhất cho mọi nhu cầu giám sát.

AWS Cloudwatch

AWS Cloudwatch

Điểm làm nên sức mạnh của CloudWatch là mức độ tích hợp sâu trong AWS. Mọi dịch vụ AWS chính đều tự động xuất số liệu lên CloudWatch:

  • Dịch vụ tính toán: EC2, Lambda, ECS và EKS
  • Dịch vụ cơ sở dữ liệu: RDS, DynamoDB và Aurora
  • Dịch vụ lưu trữ: S3, EBS và EFS
  • Dịch vụ mạng: VPC, CloudFront và Route 53

Tích hợp gốc này nghĩa là bạn có thể bắt đầu giám sát ngay mà không cần cấu hình phức tạp. Giờ khi đã hiểu CloudWatch là gì, hãy tìm hiểu chi phí sử dụng dịch vụ mạnh mẽ này.

Giá của AWS CloudWatch

Hiểu chi phí CloudWatch là điều quan trọng trước khi triển khai vào hạ tầng của bạn. Tôi sẽ phân tích mô hình giá và chia sẻ các chiến lược kiểm soát chi phí.

Bậc miễn phí và cấu trúc giá của AWS CloudWatch

Dịch vụ tính phí theo mức sử dụng, không cần cam kết trả trước. Hầu hết dịch vụ AWS gửi số liệu tự động miễn phí lên CloudWatch.

Bậc miễn phí có mức hỗ trợ hào phóng bao phủ nhu cầu giám sát cơ bản:

  • 10 số liệu tùy chỉnh và không giới hạn số liệu giám sát cơ bản
  • 10 cảnh báo cho số liệu độ phân giải tiêu chuẩn
  • 1 triệu yêu cầu API mỗi tháng
  • 5GB dữ liệu nhật ký nạp vào và lưu trữ
  • 3 bảng điều khiển, mỗi bảng tối đa 50 số liệu
  • 100 lần chạy canary mỗi tháng cho Synthetics

Vượt ngoài bậc miễn phí, số liệu tùy chỉnh có giá xấp xỉ $0.30 mỗi số liệu cho 10,000 số liệu đầu tiên, với chiết khấu theo sản lượng khi sử dụng tăng. Bảng điều khiển tính $3 mỗi bảng mỗi tháng.

Chi phí nạp nhật ký thường là $0.50 mỗi GB tại khu vực US East (giá thay đổi theo khu vực) sau bậc miễn phí. Mức giá này chỉ áp dụng cho 10 TB đầu tiên mỗi tháng; sau đó, đơn giá giảm dần. 

Sử dụng nhật ký Infrequent Access giúp giảm 50% chi phí nạp xuống còn $0.25 mỗi GB tại khu vực US East. Tuy nhiên, một hạn chế cần lưu ý là chúng không hỗ trợ dùng bộ lọc số liệu, vốn chỉ hoạt động với nhật ký Standard. Tuy nhiên, Logs-IA không hỗ trợ các tính năng như Metric Filters.

Dưới đây là tóm tắt nhanh các thành phần giá chính ngoài he free tier:

Tính năng

Giá (US East)

Số liệu tùy chỉnh (10,000 đầu tiên)

$0.30 mỗi số liệu/tháng

Nạp nhật ký

$0.50 mỗi GB/ $0.25 mỗi GB (Infrequent Access)

Lưu trữ nhật ký

$0.03 mỗi GB/tháng

Bảng điều khiển tiêu chuẩn

$3.00 mỗi bảng/tháng

Cảnh báo tiêu chuẩn

$0.10 mỗi cảnh báo/tháng

Chiến lược quản lý chi phí trong AWS CloudWatch

Qua kinh nghiệm tối ưu chi phí CloudWatch, tôi xác định một số chiến lược hiệu quả:

  • Xuất số liệu có chọn lọc: Hãy chiến lược với số liệu tùy chỉnh. Mỗi số liệu xuất ra đều tốn phí, vì vậy tập trung vào số đo thiết yếu cho doanh nghiệp thay vì theo dõi mọi thứ có thể. Dùng bộ lọc số liệu để trích xuất thông tin từ nhật ký thay vì tạo số liệu tùy chỉnh riêng bất cứ khi nào có thể
  • Tối ưu thời gian lưu nhật ký: Thiết lập chính sách lưu trữ phù hợp yêu cầu tuân thủ. CloudWatch Logs Infrequent Access là lựa chọn tiết kiệm cho nhật ký cần giữ lại nhưng hiếm khi truy vấn. Tôi thường cấu hình:
    • Lưu 7 ngày cho nhật ký debug
    • 30 ngày cho nhật ký ứng dụng
    • 90+ ngày cho nhật ký kiểm toán yêu cầu tuân thủ
  • Chọn đúng khoảng giám sát: Chỉ dùng giám sát chi tiết cho tài nguyên cần độ mịn dưới phút. Giám sát cơ bản với khoảng 5 phút đủ cho hầu hết khối lượng công việc và giảm chi phí.
  • Giảm thiểu truyền dữ liệu: Dùng CloudWatch Logs Insights thay vì truyền nhật ký sang công cụ bên ngoài không cần thiết, vì chi phí truyền dữ liệu có thể tăng nhanh.

CloudWatch Logs Insights

CloudWatch Logs Insights

Nếu bạn muốn tìm hiểu thêm cách tận dụng cấu trúc giá của AWS và giữ an toàn cho tài nguyên, tôi khuyến nghị khóa AWS Security and Cost Management của chúng tôi.

Các tính năng chính của AWS CloudWatch

CloudWatch cung cấp bộ công cụ giám sát toàn diện phối hợp với nhau để mang lại khả năng quan sát đầy đủ cho môi trường AWS của bạn. Hãy khám phá những tính năng cốt lõi bạn sẽ dùng thường xuyên nhất.

Giám sát thời gian thực với số liệu, bảng điều khiển và cảnh báo

Số liệu là nền tảng của giám sát CloudWatch. CloudWatch cung cấp khả năng quan sát số liệu đến 1 giây, lưu trữ dữ liệu từ 1 ngày đến vô thời hạn và có thể thực hiện tính toán. Độ chi tiết này cho phép giám sát thời gian thực và phân tích lịch sử để hoạch định dung lượng.

Bạn có thể tạo bảng điều khiển phù hợp nhu cầu các bên liên quan khác nhau. Đội vận hành cần mức sử dụng tài nguyên thời gian thực, trong khi đội tài chính hưởng lợi từ việc theo dõi chi phí. CloudWatch hỗ trợ bảng điều khiển đa tài khoản, cho phép giám sát tập trung cho kiến trúc nhiều tài khoản.

Cảnh báo cung cấp thông báo chủ động khi số liệu vượt ngưỡng đã định. Tôi cấu hình cảnh báo với tích hợp Amazon SNS để gửi thông báo hoặc kích hoạt khắc phục tự động thông qua hàm Lambda. Ví dụ, khi mức sử dụng CPU vượt 80% trong 5 phút, một cảnh báo có thể tự động kích hoạt Auto Scaling.

Tiếp theo, hãy xem cách CloudWatch mở rộng vượt ra ngoài số liệu cơ bản để mang lại khả năng quan sát ứng dụng và container toàn diện.

Khả năng quan sát ứng dụng và container

Với các ứng dụng hiện đại, CloudWatch Application Signals cung cấp ngay khả năng quan sát độ trễ, lỗi và hiệu năng trên khối lượng công việc AI. Nó còn hỗ trợ tự động gắn dụng cụ (auto-instrumentation), loại bỏ việc chỉnh sửa mã thủ công và cho phép tạo, theo dõi mục tiêu cấp độ dịch vụ (SLO). 

Đối với môi trường container, CloudWatch Container Insights thu thập thông tin sử dụng tài nguyên từ ứng dụng container. Container Insights hỗ trợ:

  • Amazon ECS: Số liệu ở cấp cụm, tác vụ và dịch vụ
  • Amazon EKS: Quan sát ở cấp cụm, nút và pod
  • AWS Fargate: Khả năng quan sát đầy đủ cho container serverless
  • Kubernetes tự quản: Hỗ trợ on-premises và lai

Các khả năng quan sát này tạo ra lượng dữ liệu lớn cần quản lý hiệu quả. Để so sánh các dịch vụ container của AWS, hãy xem bài so sánh ECS và EKS của chúng tôi.

Quản lý và phân tích nhật ký

Tiếp theo, hãy xem các tính năng quản lý nhật ký của CloudWatch.

Đối với lưu trữ nhật ký tập trung, CloudWatch Logs tập trung quản lý nhật ký từ dịch vụ AWS, ứng dụng và tài nguyên on-premises. Tôi tổ chức nhật ký theo nhóm đại diện từng ứng dụng, với luồng nhật ký ghi nhận từng nguồn. Chính sách lưu trữ cân bằng giữa yêu cầu tuân thủ và chi phí lưu trữ.

Khi cần phân tích dữ liệu nhật ký, CloudWatch Logs Insights cung cấp ngôn ngữ truy vấn mạnh mẽ để phân tích. Tôi dùng cú pháp giống SQL của nó để nhanh chóng:

  • Xác định mẫu lỗi
  • Theo dõi phiên người dùng cụ thể
  • Tổng hợp số liệu từ dữ liệu phi cấu trúc

Với kiểm toán bảo mật, CloudWatch tích hợp với CloudTrail để thu thập và phân tích mọi lệnh gọi API.

AWS Cloudtrail

AWS Cloudtrail

Xa hơn nữa, các khả năng quản lý dữ liệu hợp nhất gần đây cho phép thu thập và tổng hợp nhật ký trên nhiều tài khoản và khu vực AWS. Điều này loại bỏ nhu cầu về pipeline ETL phức tạp và nhiều kho dữ liệu, là bước ngoặt cho các nhóm phân tán toàn cầu.

Ngoài giám sát backend, việc hiểu trải nghiệm thực tế của người dùng cũng quan trọng không kém. Đây là lúc năng lực giám sát người dùng cuối của CloudWatch phát huy tác dụng.

Giám sát người dùng cuối và kiểm thử tổng hợp

Để ghi nhận cách người dùng thực sự trải nghiệm ứng dụng của bạn, CloudWatch RUM (Real User Monitoring) thu thập dữ liệu trải nghiệm thực tế từ ứng dụng web. Tôi triển khai RUM để hiểu hiệu năng ứng dụng từ góc nhìn người dùng, theo dõi thời gian tải trang, lỗi JavaScript và hành vi người dùng.

Để kiểm thử chủ động trước khi người dùng bị ảnh hưởng, CloudWatch Synthetics bổ trợ cho RUM bằng cách kiểm thử chủ động các endpoint ứng dụng. Bạn có thể tạo canary (kịch bản mô phỏng tương tác người dùng) để liên tục giám sát tính sẵn sàng. Các kiểm thử này chạy theo lịch, cảnh báo sự cố trước khi người dùng thực gặp phải.

Trong khi RUM và Synthetics cung cấp giám sát bề mặt, việc hiểu những gì diễn ra bên trong ứng dụng phân tán đòi hỏi khả năng quan sát sâu hơn. Đó là lúc truy vết phân tán trở nên thiết yếu.

Truy vết phân tán với AWS X-Ray

Để có khả năng quan sát yêu cầu toàn diện, tích hợp AWS X-Ray cho phép truy vết phân tán, hiển thị luồng yêu cầu qua kiến trúc vi dịch vụ. Bản đồ truy vết trực quan hóa phụ thuộc giữa dịch vụ và làm nổi bật nguồn gây độ trễ. Tôi dùng X-Ray để xác định nút thắt cổ chai về độ trễ và hiểu phụ thuộc giữa các dịch vụ.

AWS X-Ray

AWS X-Ray 

Ở khía cạnh khác, để xác định mẫu hiệu năng và nút thắt, Contributor Insights phân tích dữ liệu có độ phân biệt cao để xác định các tác nhân đóng góp hàng đầu tới hành vi hệ thống. Khi điều tra lỗi, nó cho thấy endpoint, người dùng hay tài nguyên cụ thể nào tạo ra nhiều vấn đề nhất.

Các khả năng giám sát này trở nên mạnh mẽ gấp bội khi tích hợp với dịch vụ tự động hóa của AWS. Đây là phần thú vị.

Tích hợp AWS và phản hồi tự động

Sức mạnh của CloudWatch được nhân lên qua tích hợp với các dịch vụ AWS khác. Với tự động hóa theo sự kiện, Amazon EventBridge nhận cảnh báo và sự kiện từ CloudWatch, điều phối phản hồi tự động. Bạn có thể xây dựng quy trình nơi cảnh báo CloudWatch kích hoạt quy tắc EventBridge gọi hàm Lambda để:

  • Tự động khởi động lại dịch vụ gặp lỗi
  • Co giãn tài nguyên theo nhu cầu
  • Chụp snapshot trước khi khắc phục
  • Thông báo cho các nhóm qua nhiều kênh

Đối với quy trình vận hành phức tạp, tích hợp với Systems Manager cho phép hành động vận hành tự động. Cảnh báo CloudWatch có thể kích hoạt tài liệu Tự động hóa của Systems Manager để thực thi quy trình khắc phục phức tạp trên nhiều tài nguyên.

Giờ khi đã khám phá các tính năng của CloudWatch, hãy bàn về lý do triển khai nền tảng này quan trọng với tổ chức của bạn.

Trường hợp sử dụng AWS CloudWatch

Hiểu tính năng của CloudWatch là một chuyện, nhưng thấy chúng chuyển hóa thành giá trị kinh doanh thực mới là điều quan trọng. Dưới đây là lý do các tổ chức ở nhiều ngành dựa vào CloudWatch cho vận hành của họ.

Khả năng quan sát vận hành và giám sát hiệu năng

CloudWatch cung cấp tầm nhìn tập trung vào mọi tài nguyên AWS. Tôi đánh giá cao khả năng giám sát phiên bản EC2, hàm Lambda, truy vấn cơ sở dữ liệu và số liệu đặc thù ứng dụng từ một giao diện duy nhất, cho phép liên hệ nhanh giữa hành vi hạ tầng và hiệu năng ứng dụng.

Nền tảng giảm thời gian khắc phục trung bình nhờ thu thập dữ liệu toàn diện. Khi điều tra sự cố, tôi có thể xem số liệu, nhật ký và truy vết cùng nhau, hiểu không chỉ vấn đề xảy ra mà còn vì sao xảy ra.

Ngoài khả năng quan sát vận hành, CloudWatch đóng vai trò quan trọng trong duy trì tuân thủ và hỗ trợ điều tra pháp y.

Tuân thủ và khắc phục sự cố dựa trên nhật ký

Đối với các ngành được quản lý chặt, CloudWatch đóng vai trò kho lưu trữ tập trung cho nhật ký kiểm toán và tuân thủ. Tôi cấu hình thời gian lưu nhật ký phù hợp yêu cầu quy định. Tích hợp của CloudWatch với CloudTrail ghi nhận toàn bộ hoạt động API, cung cấp dấu vết kiểm toán đầy đủ cho điều tra bảo mật.

Trong phản ứng sự cố, nhật ký trở thành nguồn chính cho phân tích nguyên nhân gốc. CloudWatch Logs Insights cho phép truy vấn nhanh qua hàng terabyte dữ liệu nhật ký, giúp xác định mẫu lỗi và phân tích hành vi hệ thống trước khi xảy ra sự cố.

Khả năng tuân thủ và khắc phục sự cố tự nhiên dẫn đến lợi ích quan trọng khác: tối ưu chi phí.

Tối ưu chi phí và kiểm soát thanh toán

Số liệu thanh toán của CloudWatch cho phép quản lý chi phí chủ động. Tôi cấu hình cảnh báo trên khoản phí ước tính để phát hiện ngay các tăng đột biến bất ngờ, giúp điều tra chi phí nhanh và hành động khắc phục kịp thời.

Thông tin hiệu năng cũng thúc đẩy tối ưu chi phí. Bằng cách phân tích số liệu sử dụng tài nguyên, tôi xác định tài nguyên cấp phát thừa để điều chỉnh đúng cỡ và hiểu các nút thắt ứng dụng nhằm giảm tài nguyên cần thiết.

Khả năng mở rộng lai và đa đám mây

CloudWatch mở rộng vượt AWS để giám sát môi trường lai và đa đám mây, hỗ trợ các tổ chức có bức tranh hạ tầng đa dạng. Dùng CloudWatch Agent, bạn có thể, ví dụ, thu thập số liệu từ máy chủ on-premises, cung cấp quan sát hợp nhất bất kể khối lượng công việc chạy ở đâu.

Theo kinh nghiệm của tôi, điều này đặc biệt hữu ích trong di trú đám mây. Tôi có thể so sánh hiệu năng giữa các môi trường bằng cùng công cụ, đảm bảo di trú không tạo ra thoái lùi.

Với những bạn thắc mắc các tính năng này so với dịch vụ CloudTrail của Amazon như thế nào, hãy đọc bài so sánh AWS CloudTrail và AWS CloudWatch của chúng tôi.

Thiết lập CloudWatch

Sẵn sàng bắt đầu với CloudWatch? Quá trình thiết lập khá đơn giản, và tôi sẽ hướng dẫn bạn mọi thứ cần để bắt đầu giám sát hạ tầng.

Điều kiện tiên quyết

Trước khi triển khai CloudWatch, hãy đảm bảo bạn có các điều kiện sau:

  • Tài khoản AWS với quyền IAM phù hợp
  • AWS CLI được cài đặt và cấu hình thông tin xác thực
  • Chính sách CloudWatchFullAccess cho thiết lập ban đầu
  • Kết nối Internet hoặc VPC endpoint cho EC2
  • Quyền truy cập HTTPS outbound cho máy chủ on-premises

Đối với môi trường sản xuất, tôi khuyến nghị các vai trò IAM riêng theo nguyên tắc đặc quyền tối thiểu thay vì cấp quyền đầy đủ dài hạn.

Nếu bạn đã có tài khoản nhưng cần hỗ trợ về lệnh terminal, hướng dẫn Cách sử dụng AWS CLI của chúng tôi sẽ hướng dẫn phần dòng lệnh.

Khi đã xong phần điều kiện tiên quyết, hãy chuyển sang quy trình thiết lập ban đầu.

Truy cập CloudWatch

Truy cập CloudWatch qua AWS Management Console bằng cách điều hướng đến dịch vụ CloudWatch. Giao diện chính cung cấp ngay cái nhìn về mọi lệnh, tùy chọn và tích hợp. 

AWS CloudWatch

AWS CloudWatch

Ví dụ, bạn có thể trực quan hóa nhật ký của các dịch vụ đang chạy tại Log Management. Đây có lẽ là một trong những phần hiển thị được dùng nhiều nhất vì cho phép chúng ta phân tích nhật ký ứng dụng và gỡ lỗi khi có sự cố vận hành.

AWS CloudWatch Log Management.

Quản lý nhật ký

Giám sát đám mây với AWS CloudWatch

Giờ bạn đã biết cách truy cập CloudWatch, hãy đi vào các quy trình thực tế bạn sẽ dùng hàng ngày để giám sát tài nguyên hiệu quả. Tôi sẽ chỉ cho bạn những kỹ thuật giám sát thiết yếu sẽ trở nên quen thuộc.

Giám sát bằng số liệu

Xem số liệu bắt đầu tại bảng điều khiển CloudWatch Metrics. Bắt đầu như sau:

Bước 1: Truy cập CloudWatch Metrics

  1. Mở AWS Management Console và điều hướng đến CloudWatch
  2. Trong bảng điều hướng trái, nhấp Metrics → All metrics
  3. Bạn sẽ thấy danh sách namespace dịch vụ sẵn có (AWS/Bedrock, AWS/EC2, AWS/Lambda, v.v.)

CloudWatch Metrics Dashboard

Bảng điều khiển số liệu CloudWatch

Bước 2: Chọn và trực quan hóa số liệu

Như bạn thấy trong hình trên, dưới "All metrics" bạn có quyền truy cập các dịch vụ khác nhau. Để bắt đầu, bạn có thể nhấp vào bất kỳ dịch vụ nào và truy cập bảng điều khiển tự động. Ví dụ, nếu tôi nhấp vào bảng Bedrock của mình, tôi đến các số liệu mặc định của Bedrock, nơi có thể xem các phép đo tiêu chuẩn như độ trễ, số token theo mô hình, số yêu cầu hoặc số lỗi.

AWS Bedrock Metrics

Số liệu AWS Bedrock

Bước 3: Tạo bộ lọc số liệu cho nhật ký

Ngoài việc trực quan hóa số liệu, bạn cũng có thể trích xuất số liệu từ dữ liệu nhật ký. Điều này có thể thực hiện bằng cách dùng bộ lọc và thiết lập mẫu. Thực hiện các bước sau để định nghĩa mẫu bộ lọc từ một số liệu:

  1. Đi tới Logs → Log management
  2. Chọn nhóm nhật ký của bạn và nhấp Actions → Create metric filter
  3. Định nghĩa mẫu lọc (ví dụ, [ERROR] để đếm lỗi)
  4. Gán tên số liệu và namespace
  5. Kiểm tra mẫu và tạo bộ lọc

Create Metric Filters

Tạo bộ lọc số liệu

Việc này tự động tạo số liệu từ dữ liệu nhật ký của bạn mà không cần thêm mã.

Khi đã quen với số liệu, bước tiếp theo là tạo bảng điều khiển để trực quan hóa dữ liệu hiệu quả.

Trực quan hóa với bảng điều khiển tùy chỉnh

Bảng điều khiển cung cấp cái nhìn tập trung về các số liệu quan trọng nhất. Cách tạo bảng điều khiển hiệu quả cho các đội khác nhau như sau.

Bước 1: Tạo bảng điều khiển mới

  1. Trong CloudWatch, điều hướng đến Dashboards ở menu trái
  2. Nhấp Create dashboard
  3. Nhập tên bảng điều khiển (ví dụ, "Production-Operations-Dashboard")
  4. Nhấp Create dashboard

Sau đó, bạn sẽ được chuyển đến trang “Add widget”, nơi có thể tùy chỉnh kiểu bảng điều khiển.

Dashboard Widgets

Widget bảng điều khiển

Bước 2: Thêm widget

Cách tốt nhất để thiết kế widget là tùy chỉnh theo yêu cầu từng đội. Tôi thường khuyến nghị như sau cho một số đội phổ biến:

Cho đội vận hành:

  • Thêm widget đường biểu diễn CPU và bộ nhớ
  • Thêm widget số hiển thị số kết nối đang hoạt động
  • Thêm widget trạng thái cảnh báo cho dịch vụ quan trọng

Cho đội tài chính:

  • Thêm widget đường biểu diễn theo dõi chi phí ước tính theo thời gian
  • Thêm widget số hiển thị chi phí lũy kế từ đầu tháng
  • Thêm số liệu từ AWS Cost Explorer

Cho đội sản phẩm:

  • Thêm số liệu đặc thù ứng dụng (đăng ký người dùng, giao dịch)
  • Thêm widget log insights cho tỷ lệ lỗi
  • Thêm KPI kinh doanh tùy chỉnh

Với điều này trong đầu, bạn có thể tạo chúng bằng các bước sau trên AWS Console:

  1. Nhấp Add widget trong bảng điều khiển
  2. Chọn loại widget: Line, Number, Gauge, Bar, Pie, v.v.
  3. Chọn namespace: Bedrock, Lamba, v.v.
  4. Cấu hình widget:
    1. Chọn số liệu từ các namespace sẵn có
    2. Đặt khoảng thời gian và chu kỳ làm mới
  5. Tùy chỉnh màu sắc và nhãn
  6. Nhấp Create widget

Làm theo các bước này, bạn có thể xem bảng điều khiển tùy chỉnh với số liệu đã chọn. Nếu cần, bạn có thể sửa đổi hoặc chia sẻ riêng tư hay công khai.

Share Custom Dashboards

Chia sẻ bảng điều khiển tùy chỉnh

Giám sát chi phí ước tính

Ngoài số liệu và bảng điều khiển ứng dụng, việc kiểm soát chi phí cũng rất quan trọng để tránh phí không cần thiết và tối ưu toàn hệ thống. CloudWatch có thể giúp bạn theo dõi và kiểm soát các chi phí trước khi bùng nổ. Cách thiết lập giám sát thanh toán như sau:

Bước 1: Bật số liệu thanh toán

  1. Đi đến bảng điều khiển Billing and Cost Management
  2. Nhấp Billing preferences ở menu trái
  3. Bật Receive Billing Alerts
  4. Nhấp Save preferences

Enable CloudWatch Billing Alerts

Bật cảnh báo thanh toán CloudWatch

Lưu ý có thể mất tới 15 phút để số liệu thanh toán xuất hiện trong CloudWatch, vì vậy sau khi áp dụng cài đặt và chờ khoảng thời gian này, hãy quay lại bảng điều khiển CloudWatch để tạo cảnh báo thanh toán.

Bước 2: Tạo cảnh báo thanh toán

Khi đã bật số liệu thanh toán, chúng ta có thể tạo cảnh báo thanh toán CloudWatch theo các bước sau:

  1. Quay lại CloudWatch → Alarms → All alarms
  2. Nhấp Create alarm
  3. Chọn số liệu
  4. Chọn Billing (Nếu bạn không thấy số liệu Billing/Total Estimated Charge, hãy bật cảnh báo thanh toán và đổi Region sang US East/N. Virginia). 
  5. Chọn Total Estimated Charge, sau đó chọn Select metric
  6. Chỉ định số liệu và điều kiện. Ở đây, bạn có thể chọn giữa cảnh báo liên quan đến chi phí và phát hiện bất thường chi phí
  7. Cấu hình hành động: thông báo, lambda, auto-scaling, EC2 và system manager
  8. Thêm chi tiết cảnh báo
  9. Xem trước và tạo

Alarm metrics and conditions

Số liệu và điều kiện cảnh báo

Sau các bước này, cảnh báo thanh toán của bạn sẽ sẵn sàng, và chi phí hoặc bất thường (tùy lựa chọn) sẽ được kích hoạt, bạn sẽ được thông báo tương ứng.

Tuy nhiên ngoài các số liệu tích hợp sẵn của AWS, bạn thường cần theo dõi số liệu đặc thù cho doanh nghiệp và ứng dụng. Điều này đồng nghĩa tạo và xuất số liệu tùy chỉnh.

Xuất số liệu tùy chỉnh

Số liệu tùy chỉnh cho phép bạn giám sát dữ liệu đặc thù ứng dụng mà AWS không tự động theo dõi. Bạn có thể xuất số liệu tùy chỉnh bằng AWS CLI hoặc API. Ở ví dụ đơn giản, tôi sẽ chỉ bạn cách làm với AWS CLI.

Lệnh sau cho phép bạn xuất một số liệu tùy chỉnh cơ bản:

aws cloudwatch put-metric-data \
  --namespace "MyApplication" \
  --metric-name "PageViews" \
  --value 1452 \
  --unit Count

Bạn cũng có thể định nghĩa dimension để phân loại số liệu. Có thể bao gồm tối đa 30 dimension cho mỗi số liệu dưới dạng cặp khóa/giá trị.

aws cloudwatch put-metric-data \
  --namespace "MyApplication" \
  --metric-name "ResponseTime" \
  --value 245 \
  --unit Milliseconds \
  --dimensions Environment=Production,Service=API

Các số liệu tùy chỉnh này sẽ xuất hiện trong bảng điều khiển AWS CloudWatch, và bạn có thể thêm chúng vào bảng điều khiển mới hoặc hiện có.

Một số trường hợp sử dụng phổ biến cho số liệu tùy chỉnh mà tôi từng thấy:

  • Số liệu kinh doanh: Người dùng hoạt động hằng ngày, tỷ lệ chuyển đổi, doanh thu trên mỗi người dùng
  • KPI ứng dụng: Tỷ lệ cache hit, độ sâu hàng đợi, loại lỗi tùy chỉnh
  • Chỉ số hiệu năng: Đo độ trễ tùy chỉnh, thông lượng
  • Số liệu vận hành: Thời gian hoàn thành job theo lô, khối lượng xử lý dữ liệu

Với các kỹ thuật giám sát nền tảng này, bạn đã sẵn sàng xử lý vận hành hằng ngày.

Các tính năng AI nâng cao của AWS CloudWatch

Vượt ra ngoài nền tảng, CloudWatch mang đến các tính năng tiên tiến giúp nó khác biệt với công cụ giám sát truyền thống. Những khả năng này dùng AI để giải quyết thách thức của kiến trúc đám mây hiện đại.

Vận hành thông minh với AIOps

CloudWatch Investigations tận dụng AI tạo sinh để tự động phân tích nguyên nhân gốc và cung cấp hướng dẫn khắc phục sự cố. Khi sự cố xảy ra, Investigations tự động liên kết:

  • Số liệu: Dữ liệu hiệu năng cho thấy thay đổi
  • Nhật ký: Sự kiện ứng dụng và hệ thống chi tiết
  • Truy vết: Luồng yêu cầu qua hệ thống phân tán
  • Thay đổi gần đây: Triển khai và cập nhật cấu hình

Vượt trên việc xác định vấn đề, nó tạo báo cáo sự cố giúp biến đổi khâu hậu kiểm. Chỉ với một cú nhấp, thu thập dữ liệu toàn diện được kích hoạt để tạo tài liệu ngữ cảnh chi tiết, loại bỏ việc thu thập bằng tay.

last.png

CloudWatch Investigations

Để ngăn báo động giả làm nhiễu vận hành, phát hiện bất thường với nhận diện mẫu giúp giảm mệt mỏi vì cảnh báo bằng cách phân biệt bất thường thực sự với biến động dự kiến. Bạn có thể cấu hình phát hiện bất thường trên số liệu chính, để CloudWatch học mẫu bình thường và chỉ cảnh báo khi có sai lệch có ý nghĩa thống kê.

Giám sát quy trình làm việc AI tạo sinh

Ứng dụng AI tạo sinh mang đến yêu cầu giám sát mới. CloudWatch cho phép nhà phát triển phân tích telemetry trên các thành phần ứng dụng AI:

  • Mẫu thực thi mã trong công cụ tích hợp sẵn
  • Tỷ lệ thành công chuyển đổi API qua Amazon API Gateways
  • Mẫu lưu trữ và truy xuất bộ nhớ
  • Việc sử dụng token và chi phí qua các lần gọi mô hình
  • Theo dõi độ trễ cho thời gian từ prompt đến phản hồi

Với các tổ chức giám sát ứng dụng AI như Amazon Bedrock AgentCore, CloudWatch cung cấp bảng điều khiển dựng sẵn dành riêng cho khả năng quan sát GenAI, tương thích với các framework nguồn mở như Strands, CrewAI và LangGraph.

Điều này cho phép chúng ta hiểu hành trình người dùng hoàn chỉnh, bao quát các số liệu liên quan đến invocation, bộ nhớ, gateway hay prompt, lần theo cách yêu cầu di chuyển qua ứng dụng AI. Khả năng quan sát này tối ưu hiệu năng ứng dụng AI và xác định nút thắt trong quy trình tác tử phức tạp.

Kết luận

CloudWatch đã phát triển từ dịch vụ số liệu cơ bản thành nền tảng quan sát toàn diện không thể thiếu cho vận hành đám mây hiện đại. Sức mạnh của nền tảng nằm ở tích hợp sâu, phân tích tự động và khả năng mở rộng từ giám sát đơn giản đến trí tuệ vận hành dựa trên AI.

Tôi khuyến khích bạn khám phá CloudWatch một cách có hệ thống, bắt đầu với số liệu và cảnh báo cơ bản, sau đó áp dụng tính năng nâng cao khi nhu cầu tăng. Tài liệu AWS CloudWatch và Well-Architected Framework cung cấp hướng dẫn chi tiết.

Giám sát hiệu quả là khai thác thông tin để cải thiện độ tin cậy, hiệu năng và trải nghiệm người dùng. CloudWatch cung cấp đầy đủ công cụ để làm điều đó và xây dựng hệ thống tốt hơn, bền bỉ hơn.

Nếu bạn muốn đạt chứng chỉ AWS, tôi khuyến nghị học lộ trình kỹ năng AWS Cloud Practitioner của chúng tôi, bao quát mọi thứ bạn cần để đạt chứng chỉ CLF-C02 của Amazon.

AWS CloudWatch FAQs

Làm sao tôi có thể dùng CloudWatch để giám sát hiệu năng của các hàm AWS Lambda?

CloudWatch tự động thu thập các số liệu của Lambda như số lần gọi, thời lượng, lỗi và throttles mà không tốn thêm phí. Điều hướng đến CloudWatch → Metrics → Lambda để xem các số liệu này. Để có thêm thông tin, hãy bật CloudWatch Lambda Insights để thu thập số liệu cấp hệ thống (CPU, bộ nhớ, mạng) và tạo bảng điều khiển tùy chỉnh. Bạn có thể đặt cảnh báo trên các số liệu như tỷ lệ lỗi hoặc thời lượng để được thông báo khi hiệu năng suy giảm.

Sự khác nhau giữa các lớp nhật ký CloudWatch Logs Standard và Infrequent Access là gì?

CloudWatch Logs Standard được thiết kế cho giám sát thời gian thực và truy vấn thường xuyên, với chi phí lưu trữ cao hơn nhưng đầy đủ tính năng. Logs Infrequent Access (Logs-IA) có chi phí nạp thấp hơn 50% (khoảng $0.25/GB so với $0.50/GB) cho nhật ký cần giữ nhưng hiếm khi truy vấn, phù hợp cho nhật ký tuân thủ và lưu trữ dài hạn. Cả hai hỗ trợ mã hóa, phân tích đa tài khoản và khả năng nạp tương tự. Tuy nhiên, Logs-IA không hỗ trợ metric filters.

Làm thế nào để tôi thiết lập cảnh báo CloudWatch dựa trên log metric filter?

Trước hết, hãy đảm bảo bạn dùng nhóm nhật ký Standard vì metric filters không khả dụng trên Logs Infrequent Access. Sau đó, tạo metric filter: vào CloudWatch → Logs management → chọn nhóm nhật ký của bạn → Create metric filter → định nghĩa mẫu (như "[ERROR]") → gán tên số liệu. Rồi tạo cảnh báo: vào Alarms → Create alarm → chọn số liệu tùy chỉnh của bạn → đặt ngưỡng → cấu hình thông báo SNS. Ví dụ, bạn có thể được cảnh báo khi số lỗi vượt quá 10 trong 5 phút.

Amazon CloudWatch có giúp tôi xác định và khắc phục sự cố trong ứng dụng container hóa không?

Có, CloudWatch Container Insights cung cấp giám sát toàn diện cho ECS, EKS và Fargate. Nó tự động thu thập số liệu như CPU, bộ nhớ, đĩa và mạng ở cấp cụm, dịch vụ và tác vụ. Kết hợp với CloudWatch Application Signals cho truy vết phân tán và tích hợp X-Ray, bạn có thể xác định nút thắt hiệu năng, theo dõi luồng yêu cầu qua vi dịch vụ và liên hệ số liệu với nhật ký để gỡ lỗi nhanh hơn.

Amazon CloudWatch tốn bao nhiêu và làm sao kiểm soát chi phí?

CloudWatch tính phí theo mức sử dụng với bậc miễn phí hào phóng (10 số liệu tùy chỉnh, 5GB nhật ký, 3 bảng điều khiển). Sau đó, số liệu tùy chỉnh khoảng $0.30 mỗi cái, và nạp nhật ký $0.25-$0.50/GB. Để kiểm soát chi phí, hãy xuất số liệu có chọn lọc (chỉ theo dõi số liệu quan trọng), triển khai chính sách lưu nhật ký phù hợp yêu cầu tuân thủ và dùng Logs Infrequent Access cho nhật ký hiếm khi truy vấn.

Benito Martin

Tác giả

Benito Martin

Với vai trò Nhà sáng lập Martin Data Solutions và Nhà khoa học dữ liệu/ Kỹ sư ML & AI tự do, tôi sở hữu danh mục năng lực đa dạng về Hồi quy, Phân loại, Xử lý ngôn ngữ tự nhiên (NLP), LLM, RAG, Mạng nơ-ron, Phương pháp tổ hợp (Ensemble) và Thị giác máy tính.

  • Phát triển thành công nhiều dự án ML end-to-end, bao gồm làm sạch dữ liệu, phân tích, xây dựng mô hình và triển khai trên AWS và GCP, mang lại các giải pháp có tác động và khả năng mở rộng.
  • Xây dựng các ứng dụng web tương tác, có khả năng mở rộng bằng Streamlit và Gradio cho nhiều bài toán trong các ngành khác nhau.
  • Giảng dạy và cố vấn cho học viên về khoa học dữ liệu và phân tích, thúc đẩy sự phát triển nghề nghiệp của họ thông qua phương pháp học tập cá nhân hóa.
  • Thiết kế nội dung khóa học cho các ứng dụng retrieval-augmented generation (RAG) được điều chỉnh theo yêu cầu doanh nghiệp.
  • Viết các blog kỹ thuật AI & ML có sức ảnh hưởng, bao gồm các chủ đề như MLOps, cơ sở dữ liệu vector và LLM, đạt được mức độ tương tác đáng kể.

Trong mỗi dự án tôi đảm nhận, tôi luôn áp dụng các thực hành cập nhật trong kỹ thuật phần mềm và DevOps như CI/CD, linting mã, định dạng, giám sát mô hình, theo dõi thí nghiệm và xử lý lỗi mạnh mẽ. Tôi cam kết cung cấp các giải pháp hoàn chỉnh, chuyển hóa những hiểu biết từ dữ liệu thành chiến lược thực tiễn giúp doanh nghiệp phát triển và khai thác tối đa giá trị của khoa học dữ liệu, học máy và AI.

Chủ đề

Liên quan