如何使用 Datadog 監控 NGINX(第三篇)
如果你已經閱讀了前面的如何監控 NGINX,你應該知道從你網絡環境的幾個指標中可以獲取多少信息。而且你也看到了從 NGINX 特定的基礎中收集指標是多么容易的。但要實現全面,持續的監控 NGINX,你需要一個強大的監控系統來存儲并將指標可視化,當異常發生時能提醒你。在這篇文章中,我們將向你展示如何使用 Datadog 安裝 NGINX 監控,以便你可以在定制的儀表盤中查看這些指標:
Datadog 允許你以單個主機、服務、流程和度量來構建圖形和警告,或者使用它們的幾乎任何組合構建。例如,你可以監控你的所有主機,或者某個特定可用區域的所有NGINX主機,或者您可以監視具有特定標簽的所有主機的一個關鍵指標。本文將告訴您如何:
- 在 Datadog 儀表盤上監控 NGINX 指標,就像監控其他系統一樣
- 當一個關鍵指標急劇變化時設置自動警報來通知你
配置 NGINX
為了收集 NGINX 指標,首先需要確保 NGINX 已啟用 status 模塊和一個 報告 status 指標的 URL。一步步的配置開源 NGINX 和NGINX Plus 請參見之前的相關文章。
整合 Datadog 和 NGINX
安裝 Datadog 代理
Datadog 代理是 一個開源軟件 ,它能收集和報告你主機的指標,這樣就可以使用 Datadog 查看和監控他們。安裝這個代理通常 僅需要一個命令
只要你的代理啟動并運行著,你會看到你主機的指標報告 在你 Datadog 賬號下 。
配置 Agent
接下來,你需要為代理創建一個簡單的 NGINX 配置文件。在你系統中代理的配置目錄應該 在這兒 找到。
在目錄里面的 conf.d/nginx.yaml.example 中,你會發現 一個簡單的配置文件 ,你可以編輯并提供 status URL 和可選的標簽為每個NGINX 實例:
init_config:
instances:
- nginx_status_url: http://localhost/nginx_status/
tags:
- instance:foo當你提供了 status URL 和任意 tag,將配置文件保存為 conf.d/nginx.yaml。
重啟代理
你必須重新啟動代理程序來加載新的配置文件。重新啟動命令 在這里 ,根據平臺的不同而不同。
檢查配置文件
要檢查 Datadog 和 NGINX 是否正確整合,運行 Datadog 的 info 命令。每個平臺使用的命令 看這兒 。
如果配置是正確的,你會看到這樣的輸出:
Checks
======
[...]
nginx
-----
- instance #0 [OK]
- Collected 8 metrics & 0 events 安裝整合
最后,在你的 Datadog 帳戶打開“Nginx 整合”。這非常簡單,你只要在 NGINX 整合設置 中點擊“Install Integration”按鈕。
指標!
一旦代理開始報告 NGINX 指標,你會看到 一個 NGINX 儀表盤 出現在在你 Datadog 可用儀表盤的列表中。
基本的 NGINX 儀表盤顯示有用的圖表,囊括了幾個 我們的 NGINX 監控介紹 中的關鍵指標。 (一些指標,特別是請求處理時間要求進行日志分析,Datadog 不支持。)
你可以通過增加 NGINX 之外的重要指標的圖表來輕松創建一個全面的儀表盤,以監控你的整個網站設施。例如,你可能想監視你 NGINX 的主機級的指標,如系統負載。要構建一個自定義的儀表盤,只需點擊靠近儀表盤的右上角的選項并選擇“Clone Dash”來克隆一個默認的 NGINX 儀表盤。
你也可以使用 Datadog 的 主機地圖 在更高層面監控你的 NGINX 實例,舉個例子,用顏色標示你所有的 NGINX 主機的 CPU 使用率來辨別潛在熱點。
NGINX 指標警告
一旦 Datadog 捕獲并可視化你的指標,你可能會希望建立一些監控自動地密切關注你的指標,并當有問題提醒你。下面將介紹一個典型的例子:一個提醒你 NGINX 吞吐量突然下降時的指標監控器。
監控 NGINX 吞吐量
Datadog 指標警報可以是“基于吞吐量的”(當指標超過設定值會警報)或“基于變化幅度的”(當指標的變化超過一定范圍會警報)。在這個例子里,我們會采取后一種方式,當每秒傳入的請求急劇下降時會提醒我們。下降往往意味著有問題。
-
創建一個新的指標監控。從 Datadog 的“Monitors”下拉列表中選擇“New Monitor”。選擇“Metric”作為監視器類型。
-
定義你的指標監視器。我們想知道 NGINX 每秒總的請求量下降的數量,所以我們在基礎設施中定義我們感興趣的 nginx.net.request per s 之和。
-
設置指標警報條件。我們想要在變化時警報,而不是一個固定的值,所以我們選擇“Change Alert”。我們設置監控為無論何時請求量下降了30%以上時警報。在這里,我們使用一個一分鐘的數據窗口來表示 “now” 指標的值,對橫跨該間隔內的平均變化和之前 10 分鐘的指標值作比較。
-
自定義通知。如果 NGINX 的請求量下降,我們想要通知我們的團隊。在這個例子中,我們將給 ops 團隊的聊天室發送通知,并給值班工程師發送短信。在“Say what’s happening”中,我們會為監控器命名,并添加一個伴隨該通知的短消息,建議首先開始調查的內容。我們會 @ ops 團隊使用的 Slack,并 @pagerduty 將警告發給短信 。
-
保存集成監控。點擊頁面底部的“Save”按鈕。你現在在監控一個關鍵的 NGINX 工作指標 ,而當它快速下跌時會給值班工程師發短信。
結論
在這篇文章中,我們談到了通過整合 NGINX 與 Datadog 來可視化你的關鍵指標,并當你的網絡基礎架構有問題時會通知你的團隊。
如果你一直使用你自己的 Datadog 賬號,你現在應該可以極大的提升你的 web 環境的可視化,也有能力對你的環境、你所使用的模式、和對你的組織最有價值的指標創建自動監控。
如果你還沒有 Datadog 帳戶,你可以注冊 免費試用 ,并開始監視你的基礎架構,應用程序和現在的服務。
via: https://www.datadoghq.com/blog/how-to-monitor-nginx-with-datadog/
作者:K Young 譯者: strugglingyouth 校對: wxy
本文由 LCTT 原創翻譯,Linux中國 榮譽推出