Grafana和ES打造的Nginx的儀表盤

Grafana和ES打造的Nginx的儀表盤

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

我們想要打造一套監控平臺,因此我在逐漸的完善我的DashBoard系列文章。如果你也對這部分感興趣那麼歡迎來和我一起構建這個儀表盤。

監控指標

針對入口Nginx,我設計瞭如下的監控指標:

  • 最近的24小時內訪問量Top10的國家
  • 最近24小時最受歡迎的頁面
  • 200狀態碼和404狀態碼的比例
  • 最受歡迎的世界題圖展示
  • 等等

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-3vIRXmEl-1589266045508)(https://user-images.githubusercontent.com/567298/80523974-32925180-898f-11ea-96b6-e8e559655745.png)]

構建你的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數據源
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章