iT邦幫忙

2025 iThome 鐵人賽

DAY 22
0
Build on AWS

亞馬遜熱帶雨林生存日記系列 第 22

Day 22: 使用AWS SNS設計文章發佈通知—如何搭配CloudWatch Metrics和Dashboard追蹤系統問題 (下)

  • 分享至 

  • xImage
  •  

昨天說完如何使用 CloudWatch Metrics ,今天就來說說 Dashboard 吧!已經有了 Metrics ,為什麼還要使用 Dashboard 呢?因為 Dashboard 可以把不同服務建的 Metrics 集中管理,就可以在同一個地方看見整個系統的全貌!

想要使用 Dashboard ,可以到 CloudWatch 的 console 點選 Dashboard 並 Create dashboard

接著可以選擇你要把什麼指標加入這個 Dashboard 。昨天 debug 過程比較常用 metrics ,所以就選擇 metrics 吧!

選擇 metrics 之後,就可以從 Service 裡面挑選已經存在且想要的 metrics 加入。

以 API Gateway 為例,可以挑選 Count 、 4XXError 和 5XXError 等 metrics ,當然可以一個統計圖表可以只選擇一個 metrics ,也可以選擇把多個 metrics 放在同一個統計圖表 (不同 Service 也可以放一起)。

根據上面 debug 的流程,我選擇先觀察 API Gateway 的 Request count 和 Lambda 的 Invocations ,並把這兩個 metrics 放在一起比較,第一時間就可以猜到可能是 Lambda 數量不足的問題。

接著也撈出兩個 Service Error 的情況,藉由這個指標觀察會不會是哪個 Service 造成 5XXError

當然,呼叫 API 少不了要知道 Latency ,所以也把 API Gateway 、 Lambda 和 DynamoDB 的 Latency 一起放進來比較,如果真的有 Latency 過高,不符合預期的狀況,可以快速猜測 bottleneck 在哪裡。

Throttles 的部分就是觀察 Lambda 是不是有丟棄 Request 的情形,可以多一個證據確認 Lambda 的數量是不是有問題。

以上就是使用 CloudWatch Metics 和 Dashboard 追蹤系統問題的過程,自己走一遍之後發現,設計 Dashboard 需要累積一些平常 debug 的經驗,比較知道要看哪些 metrics 。

雖然 Dashboard 很方便,可以把每個 Service 的統計數據都抓出來,但要觀察哪些數據才是真的能幫你抓出該系統的異常,不然設計出很漂亮的 Dashboard ,五花八門的圖表如果派不上用場,會失去使用 Dashboard 的目的。


上一篇
Day 21: 使用AWS SNS設計文章發佈通知—如何搭配CloudWatch Metrics和Dashboard追蹤系統問題 (上)
下一篇
Day 23: 如何使用AWS bedrock agent查詢DynamoDB資料 (上)
系列文
亞馬遜熱帶雨林生存日記23
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言