歡迎關注“獨行高飛”公眾號
grafana 是一款采用 go 語言編寫的開源應用,主要用於大規模指標數據的可視化展現,是網絡架構和應用分析中最流行的時序數據展示工具,目前已經支持絕大部分常用的時序數據庫,官網(
http://docs.grafana.org/).

我們想要打造一套監控平台,因此我在逐漸的完善我的DashBoard系列文章。如果你也對這部分感興趣那么歡迎來和我一起構建這個儀表盤。
監控指標
針對入口Nginx,我設計了如下的監控指標:
- 最近的24小時內訪問量Top10的國家
- 最近24小時最受歡迎的頁面
- 200狀態碼和404狀態碼的比例
- 最受歡迎的世界題圖展示
- 等等

構建你的DashBoard
再開始構建前,我需要先介紹一下都用到了什么基礎軟件,Nginx,Redis,Logstash,Elasticsearch,Grafana,Pormetheus。
那么,要構建這個DashBoard,我們首先要把Elasticsearch作為數據源配置到Grafana中。打開如下地址,然后輸入Grafana的管理員用戶名和密碼進配置。
http://grafana服務ip:3000
進入配置頁面,在左側選擇數據源,選擇添加數據源,選擇Elasticsearch后,完成配置。

配置完成數據后,我們就要選擇dashboard的模板了。我們進入dashboard的配置,我們使用
https://grafana.com/grafana/dashboards/11190,模板。接下啦,我們需要輸入dashboard的名字,選擇Elasticsearch和Prometheus的數據源就可以看到你的監控數據了。
看看我們的DashBoard


你需要知道的內容
上面看完了,那么下面我介紹一下我系統中用到的這些軟件的鏈接關系。

- Nginx 會將我們定義的log_format寫入/var/log/nginx/access_json.log文件,Filebeat會將其作為輸入項。
- Filebeat會將數據輸出到Redis
- Logstash作為Redis數據的過濾將數據存儲Elasticsearch
- Grafana讀取Elasticsearch數據源