grafana初級入門
grafana初級入門
預備知識
Metrics、Tracing和Logging的區別
監控、鏈路追蹤及日誌作為實時監測系統運行狀況,這三個領域都有對應的工具和解決方案。
Metrics 監控指標的定義,特徵是它們是可聚合的:它們是在一段時間內組成單個邏輯指標、計數器或直方圖的原子項。
Logging 日誌的定義,特徵是它處理離散事件。
Tracing 它定義,特徵是它處理請求範圍內的資訊–任何可以綁定到系統中單個事務對象的生命周期的數據或元數據。
詳細參考文檔。
監控系統
白盒監控
通過了解系統內部來預測實際運行情況,預測和實際是否一致。預判可能出現的問題。
黑盒監控
在系統或者服務在發生故障時能夠快速通知相關的人員進行處理。
度量指標 Metrics
- 計量器(Gauge):瞬間狀態。例如:記憶體使用,CPU佔用等。
- 計數器(Counter):累計型的度量指標。它是一個只能遞增的數值。例如:服務請求數。
- 直方圖(Histogram):對觀察結果進行取樣。通常是請求持續時間或者響應耗時這樣的數據。
- 匯總(Summary):對觀察結果進行取樣。除了可以統計取樣值總和和總數,還能按照分位數統計。
當然,對數據思考的角度不同也還有其他的類別。常用的前3種。
合適的場景選擇合適的指標。
什麼是工具
沒有它的時候,無所謂;有它的時候,也無所謂;
需要它的時候,就有所謂了。
grafana是什麼
grafana是一個開源的UI介面解決方案。
grafana是一個開源的、儀錶盤式的分析監控平台。
grafana是一個用於監控指標分析和圖表展示的工具。
grafana支援多種數據源,如Elasticsearch, Influxdb, Graphite, Prometheus, AWS,Mysql等。
關鍵詞:
Visualize | 可視化 |
---|---|
Unify | 統一 |
Extend | 可擴展 |
Alert | 告警 |
Open | 全平台 |
Collaborate | 協作 |
一句話:將數據池中的數據展示給用戶。
grafana能做什麼
這3個需要前置promethues。有機會下次講promethues。
對接mysql裡面的數據 目前三消正在用的
grafana安裝
建議不要install,包下載好後,直接找到grafana-server程式,然後執行./grafana-server &就可以了。
打開瀏覽器,輸入IP+埠,3000為grafana的默認埠。
對接mysql數據
grafana直連mysql,數據可視化。
具體實操。
可擴展
6個關鍵詞,重點寫這一塊。
插件:面板(Panel),數據源(Data Source),應用(app)
面板:和echarts類似,但是比echarts更靈活、易用
數據源:每一種數據源有不同的接入方式
應用:不太了解
數據源:分為資料庫狀態和資料庫數據。
- 資料庫狀態:基本都能搞
- 資料庫數據:有些不能搞。例如redis mongo,想想為什麼?
FAQ
- 同一個數據,不同人員看的角度不同,怎麼辦?
比如同一個數據,需要從A、B、C三個維度查看。展示的方式人的偏好也不同。
現在彩虹是做不到的。因為頁面調整在他們手裡。
grafana可以,使用者可以自由調整面板。
- 學習門檻怎樣?
不高。會sql就可以,但是對sql還是有一定的要求。雖然grafana對每一種數據源的語法不同,但是它沒有創造語法,僅是對資料庫本身提供語法的封裝,方便使用。
- 一個頁面是否可以同時展示不同數據源的數據?
可以的。
- 一個dashboard是否可以同時展示不同數據源的數據?
不可以。
- 如果數據分布在2個不同的數據源,並且需要經常操作,不是很方便,怎麼辦?
可以前面放置promethues,將數據聚合,然後將promethues作為唯一數據源。
如果小規模使用,不建議這樣做。數據經過了一次周轉,降低了自由度。
思想
- 開放和自由,滿足不同的需求
- 工欲善其事必先利其器
- 開發過程中引入工具,降低未來的修復成本