iT邦幫忙

2021 iThome 鐵人賽

DAY 17
0
DevOps

Elastic Stack(ELK)數據圖表化與異常監控系列 第 17

Day17 Elastic APM (一)

接下來將要來介紹如何運用APM(Application Performance Monitoring)來去達成程式內的效能監控,以便查看應用程式的效能瓶頸問題,讓我們能更方便的尋找解決方案。

ELK APM 簡介

Elastic APM 是基於Elastic Stack構建的應用程序效能監控,用於監控應用程序的各項指標,主要可以透過APM來收集系統效能、request回應時間、資料庫查詢等,以便開發人員快速排查和修復問題。

Elastic APM 是由下列四個元件組成:

  • APM Agent
    以函式庫的形式讓我們寫入程式中,負責收集執行時的資訊,傳送回APM Server。
  • APM Server
    負責接收APM Agent傳送的監控資料,協助驗證並轉換資料後,將資料儲存到Elasticsearch。
  • Elasticsearch
    用於儲存應用效能監控資料。
  • Kibana
    視覺化APM效能資料。

Elastic APM 架構如下:
https://ithelp.ithome.com.tw/upload/images/20210923/20129762m1PXwNY16H.png

APM 資料模型

APM agent從應用程式中收集到不同型別的資訊,這些就被稱為事件(Event)。

事件分為幾種類型: Error、Span、Transaction、metrics:

  • Error: 錯誤事件包含原始例外的發生或發生時的異常相關資訊。
  • Span: 紀錄程序從活動開始到結束的相關資訊,包含操作過程中所有執行路徑。
  • Transaction: 是一種特殊的span,具有與之關聯的額外屬性,是應用程式中最高層級的測量工作,如:背景服務、批次工作等。
  • metrics: APM agent 自動挑選基本的主機層級指標,包含有系統和程序的CPU和memory指標。

小結

今天我們了解什麼是APM,透過APM可以即時監控應用程式中相關的資訊,所以接下來我們將要來實作APM是如何在應用程式運作並取得資訊。


上一篇
Day16 Nginx log視覺化圖表分析(二)
下一篇
Day18 Elastic APM (二)
系列文
Elastic Stack(ELK)數據圖表化與異常監控30

尚未有邦友留言

立即登入留言