Upgrade to Pro — share decks privately, control downloads, hide ads and more …

讓數據說話:用 Python、Prometheus 和 Grafana 講故事

高見龍
October 26, 2024

讓數據說話:用 Python、Prometheus 和 Grafana 講故事

你怎麼知道現在網站的流量是高還是低?你怎麼知道目前的設備是否運作正常?這些問題的答案可能都藏在數據裡。

收集數據很重要,但光只有收集是不夠的,還要能夠讓這些數據講一個有趣的故事。

透過撰寫 Python 程式把收集數據的流程自動化,接著使用 Prometheus 把雜亂的數據整理得井井有條,最後再藉由 Grafana 的儀表板來呈現這些數據,把原本枯燥的數字變成生動的圖表,讓你或你的老闆也能一目了然看懂數據的喜怒哀樂。本主題將介紹如何利用 Python、Prometheus 和 Grafana 的 三角黃金組合,把數據視覺化。

高見龍

October 26, 2024
Tweet

More Decks by 高見龍

Other Decks in Programming

Transcript

  1. 五倍學院 Telemetry /təˈlem.ə.tri/ Observability relies on three main types of

    telemetry data: metrics, logs and traces. Those are often referred to as "pillars of observability".
  2. 五倍學院 Telemetry /təˈlem.ə.tri/ metrics 定期收集「指標」,以數值 方 式呈現系統或服務的性 能,如 CPU 使

    用 率、記憶體消耗量、網路流量等 舉例: 每 小 時賣了幾杯咖啡? 客 人 排隊等候平均時間是多久?
  3. 五倍學院 Telemetry /təˈlem.ə.tri/ 「 日 誌」是系統或應 用 程式在運 行 過程中產

    生 的 文 字訊 息,通常 用 來紀錄重要事件或錯誤,包括時間戳記。 舉例: 10:02 咖啡機啟動。 10:03 沖泡了 一 杯拿鐵。 10:05 咖啡交給客 人 。 logs
  4. 五倍學院 Python /ˈpaɪ.θɑːn/ Python is a high-level, general-purpose programming language.

    Its design philosophy emphasizes code readability with the use of significant indentation.
  5. 五倍學院 Grafana Grafana is a multi-platform open source analytics and

    interactive visualization web application. It can produce charts, graphs, and alerts for the web when connected to supported data sources.
  6. 五倍學院 Pull vs Push Pull 可能遇到... 沒有厲害的 大大 幫我寫 exporter!🥺

    防火牆、公司資安政策 要同時 Pull 好幾個不同的資料來源 資料 生 命週期短,還沒等到 Pull 來抓就消失了 😭