如何使用 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.requestpers 之和。
- 設置指標警報條件。我們想要在變化時警報,而不是一個固定的值,所以我們選擇「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
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive