Prometheus監控Nginx

Prometheus 是一個開源的監控系統,Nginx 是一款開源的高性能 Web 服務器。此篇文章將詳細介紹如何使用 Prometheus 監控 Nginx 的運行狀態,主要包括以下幾個方面。

一、安裝 Prometheus

首先需要安裝並啟動 Prometheus,可參考以下代碼:

cd /opt/
wget https://github.com/prometheus/prometheus/releases/download/v2.22.0/prometheus-2.22.0.linux-amd64.tar.gz
tar -zxvf prometheus-2.22.0.linux-amd64.tar.gz
cd prometheus-2.22.0.linux-amd64/
./prometheus --config.file=prometheus.yml

其中 prometheus.yml 文件是配置文件,用來定義哪些服務和指標需要被監控。這裡只需要關注 Nginx,因此只需要在 prometheus.yml 中添加以下內容:

  - job_name: 'nginx'
    scrape_interval: 5s
    metrics_path: /nginx_status
    static_configs:
      - targets: ['localhost:80']

上述代碼定義了監控 Nginx,其中 job_name 是一個自定義的名稱,scrape_interval 是採集數據的時間間隔,metrics_path 是 Nginx 的狀態數據地址,static_configs 是 Nginx 的 IP 和端口。

二、配置 Nginx

為了能夠監控 Nginx,需要在 Nginx 的配置文件中增加以下代碼:

location /nginx_status {
    stub_status on;
    access_log off;
    allow 127.0.0.1;
    deny all;
}

這段代碼主要是定義了狀態數據的接口地址為 /nginx_status,每次訪問該地址都會返回一份包含當前狀態信息的文本內容。

三、安裝 Nginx Exporter

Nginx Exporter 是一個 Prometheus 的擴展,用於採集 Nginx 的基本指標信息。可以通過以下命令進行安裝:

wget https://github.com/nginxinc/nginx-prometheus-exporter/releases/download/v0.8.0/nginx-prometheus-exporter-0.8.0-linux-amd64.tar.gz
tar -zxvf nginx-prometheus-exporter-0.8.0-linux-amd64.tar.gz
cd nginx-prometheus-exporter-0.8.0-linux-amd64/
./nginx-prometheus-exporter

啟動 Nginx Exporter 後,可以通過 http://localhost:9113/metrics 訪問其提供的監控信息。

四、配置 Prometheus

為了將 Nginx Exporter 的監控信息集成到 Prometheus 中,需要在 prometheus.yml 中添加以下內容:

  - job_name: nginx-exporter
    scrape_interval: 5s
    static_configs:
      - targets: ['localhost:9113']

上述代碼定義了一個名為 nginx-exporter 的 job,每 5 秒鐘採集一次 Nginx Exporter 的數據。

五、查詢指標

通過 Prometheus 提供的 Web 界面,可以輕鬆地查詢 Nginx 的各項指標信息。例如,可以查詢 Nginx 的請求數、響應時間等信息,以便及時發現和解決問題。

查詢 Nginx 的請求數,可以使用以下 PromQL 表達式:

nginx_http_requests_total

查詢 Nginx 的響應時間,可以使用以下 PromQL 表達式:

nginx_http_request_duration_seconds

六、總結

通過上述步驟,我們已經學習了如何使用 Prometheus 監控 Nginx 的運行狀態。通過監控 Nginx 的各項指標信息,可以及時發現和解決問題,保障系統的穩定性和可靠性。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/197960.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-04 07:29
下一篇 2024-12-04 07:29

相關推薦

  • Java如何從Nginx下載文件

    本文將從以下幾個方面詳細介紹如何使用Java從Nginx下載文件。 一、準備工作 在Java中下載文件需要使用到Apache HttpClient庫,這個庫是一個基於Java的HT…

    編程 2025-04-27
  • nginx與apache應用開發詳解

    一、概述 nginx和apache都是常見的web服務器。nginx是一個高性能的反向代理web服務器,將負載均衡和緩存集成在了一起,可以動靜分離。apache是一個可擴展的web…

    編程 2025-04-25
  • NGINX權限被拒絕問題

    NGINX是一款常見的Web服務器軟件,但是在使用中常會遇到“permission denied”權限被拒絕的問題。下文將從多個方面介紹本問題和解決方法。 一、系統權限問題 1、檢…

    編程 2025-04-25
  • 關閉nginx命令詳解

    一、linux系統中關閉nginx命令 1、使用ps命令找到nginx的進程ID $ ps -ef | grep nginx 2、發送信號給nginx進程結束 $ kill -QU…

    編程 2025-04-25
  • 深入淺出:理解nginx unknown directive

    一、概述 nginx是目前使用非常廣泛的Web服務器之一,它可以運行在Linux、Windows等不同的操作系統平台上,支持高並發、高擴展性等特性。然而,在使用nginx時,有時候…

    編程 2025-04-24
  • Prometheus配置詳解

    一、基礎配置 1、在Prometheus的配置文件中,需要定義scrape_configs字段,用於定義需要監控的目標。比如,我們要監控Node Exporter的metrics,…

    編程 2025-04-24
  • nginx指定配置文件詳解

    一、配置文件介紹 nginx的配置文件主要由指令和塊組成,以“;”分號作為結束符號,以“{}”大括號作為塊的開始和結束標誌。 nginx的默認配置文件在安裝目錄下的conf文件夾中…

    編程 2025-04-24
  • 重啟nginx服務的命令詳解

    nginx是一個高性能的Web服務器,可通過重新啟動nginx服務來更新配置文件和釋放資源。本文將從多個方面詳細闡述如何重啟nginx服務,包括命令的使用、參數的說明等。 一、ng…

    編程 2025-04-24
  • Nginx$Host詳解

    一、什麼是Nginx$Host Nginx是一款輕量級的Web服務器,可以作為反向代理服務器、負載均衡服務器等。而Nginx$Host是Nginx中的一個特殊變量,它用於表示當前請…

    編程 2025-04-23
  • Mac Nginx詳細介紹

    一、安裝Nginx 安裝nginx最簡便的方法是使用Homebrew。執行以下命令來安裝Homebrew: /usr/bin/ruby -e “$(curl -fsSL https…

    編程 2025-04-23

發表回復

登錄後才能評論