這週五,我參加了人生中的第一次 DevOps Taiwan Meetup,沒想到初次體驗就撞上了最熱門的話題——可觀測性(Observability)。活動現場的熱烈程度超乎想像,甚至連走道都被坐滿了!只需要 50 元場地費,就能享受兩小時滿滿的知識密集的分享,真的讓人驚喜不已。周圍的參與者也都很厲害,以後會常常參加!希望未來也能夠有能力站上講台分享心得!
這次的主講人是 Blueswen 和 雷N,他們帶來了許多關於 Observability 的核心要點,並展示了如何通過 Live Demo 在開發部署階段「將問題左移」,提升問題解決效率。有過 Dynatrace 經驗的我,發現很多內容與過去的實務經歷相呼應,可以舉一反三。以下是我的筆記與重點整理。
監控(Monitoring) 是一種針對特定指標進行數據收集、分析和使用的過程,主要用來追蹤系統運行狀況,幫助及時發現異常並輔助決策。然而,它的數據通常與更廣泛的系統背景脫節。
而 可觀測性(Observability) 是指通過分析系統生成的數據(如日誌、指標和分散式追踪),來深入理解系統內部狀態的能力。它不僅能快速檢測問題,還能幫助找出問題的根本原因,特別適用於現今微服務架構下的複雜系統。
其關鍵差異,舉例來說:
1. 問題處理方式
2. 數據深度
3. 問題診斷
當系統出現異常時,我們是否有足夠的資訊來了解發生了什麼事?這些資訊是否被妥善保存?是否有效地被利用?還是散落在各處形成了資料孤島(Data Silo),是不是能夠有效的將不同來源的資料一起顯示並關聯再一起,讓你在查找問題時能夠看到問題和根本原因的關聯性?
可觀測性(Observability)就是為了解決這些問題而生的概念,它強調透過各種資訊來清楚了解系統狀態。
可觀測性主要包含但是不限於這三種最核心的資料種類:
可觀測性的實作可以分為四個主要階段:
DevOps Taiwan Community | DevOps 台灣社群
DevOps Taiwan Community - KKTIX