Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Nginx überwacht die Statuskonfiguration in Echtzeit und hält sich über den Betriebsstatus der Website auf dem Laufenden

Nginx überwacht die Statuskonfiguration in Echtzeit und hält sich über den Betriebsstatus der Website auf dem Laufenden

WBOY
WBOYOriginal
2023-07-04 12:33:152211Durchsuche

Nginx überwacht die Echtzeit-Statuskonfiguration und erkennt rechtzeitig den Betriebsstatus der Website.

Wenn die Website ausgeführt wird, ist es sehr wichtig, den Echtzeitstatus des Servers zu kennen. Nginx ist eine sehr beliebte Webserver-Software, die viele Überwachungsfunktionen bietet, die uns helfen, den Betrieb der Website zu verstehen. In diesem Artikel wird die Konfiguration der Nginx-Echtzeitüberwachung vorgestellt und einige Codebeispiele als Referenz bereitgestellt.

1. Nginx installieren
Zuerst müssen wir den Nginx-Server installieren. Sie können es kompilieren und installieren oder einen Paketmanager verwenden, um es zu installieren. Am Beispiel des Ubuntu-Systems können Sie zur Installation den folgenden Befehl verwenden:

sudo apt-get update
sudo apt-get install nginx

Nach Abschluss der Installation können Sie mit dem folgenden Befehl überprüfen, ob die Installation erfolgreich war:

nginx -v

Wenn die Versionsnummer angezeigt werden kann , bedeutet dies, dass die Installation erfolgreich war.

2. Nginx-Überwachungsmodul konfigurieren
Nginx bietet ein sehr praktisches Modul namens ngx_http_stub_status_module, mit dem der Status von Nginx in Echtzeit überwacht werden kann. Im Folgenden sind die Schritte zum Konfigurieren dieses Moduls aufgeführt: ngx_http_stub_status_module,可以用来实时监控Nginx的状态。下面是配置该模块的步骤:

  1. 确认Nginx配置文件位置。通常情况下,Nginx的配置文件位于/etc/nginx/nginx.conf或者/etc/nginx/conf.d/default.conf。可以使用以下命令来确认配置文件的位置:

    nginx -t
  2. 编辑配置文件。使用文本编辑器打开Nginx的配置文件:

    sudo vi /etc/nginx/conf.d/default.conf
  3. 在配置文件中添加以下内容:

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

    上述配置将在路径/nginx_status下开启状态监控,并限制只能通过本地访问。

  4. 保存并退出配置文件。重启Nginx服务使配置生效:

    sudo service nginx restart

三、访问Nginx状态监控页面
配置完成后,就可以通过浏览器访问Nginx的状态监控页面了。在浏览器地址栏中输入http://your_domain/nginx_status,其中your_domain是你的服务器域名或IP地址。如果配置正确,将会看到类似下面的页面:

Active connections: 1
server accepts handled requests
 16630948 16630948 31070446
Reading: 0 Writing: 1 Waiting: 0

其中,Active connections表示当前活跃连接数;acceptshandledrequests表示自Nginx启动以来的总请求数;ReadingWritingWaiting表示Nginx正在读取请求、写入响应和等待的连接数。

四、使用监控API获取状态数据
如果想要以编程的方式获取Nginx的状态数据,可以使用Nginx的监控API。以下是一个使用Python编写的示例代码,用于获取Nginx的状态信息:

import requests

def get_nginx_status():
    url = 'http://your_domain/nginx_status'  # 替换成你的nginx状态监控页面
    response = requests.get(url)
    if response.status_code == 200:
        status = response.text
        return status
    else:
        return None

status = get_nginx_status()
if status:
    print(status)
else:
    print('Failed to get Nginx status')

注意替换url变量为你的Nginx状态监控页面的URL。

通过调用get_nginx_status函数可以获取Nginx的状态信息,并将其打印出来。该函数返回的状态信息为一个字符串,与通过浏览器访问状态监控页面所看到的内容相同。

总结:
Nginx提供了强大的监控功能,可以帮助我们实时了解网站的运行情况。通过配置ngx_http_stub_status_module

  1. Bestätigen Sie den Speicherort der Nginx-Konfigurationsdatei. Normalerweise befindet sich die Nginx-Konfigurationsdatei in /etc/nginx/nginx.conf oder /etc/nginx/conf.d/default.conf. Sie können den folgenden Befehl verwenden, um den Speicherort der Konfigurationsdatei zu bestätigen: 🎜rrreee
  2. 🎜Bearbeiten Sie die Konfigurationsdatei. Öffnen Sie die Nginx-Konfigurationsdatei mit einem Texteditor: 🎜rrreee
  3. 🎜Fügen Sie den folgenden Inhalt in die Konfigurationsdatei ein: 🎜rrreee🎜Die obige Konfiguration aktiviert die Statusüberwachung unter dem Pfad /nginx_status code> und beschränken Sie den Zugriff nur auf den lokalen Zugriff. 🎜
  4. 🎜Speichern und beenden Sie die Konfigurationsdatei. Starten Sie den Nginx-Dienst neu, damit die Konfiguration wirksam wird: 🎜rrreee
🎜3. Greifen Sie auf die Nginx-Statusüberwachungsseite zu🎜Nachdem die Konfiguration abgeschlossen ist, können Sie über den Browser auf die Nginx-Statusüberwachungsseite zugreifen. Geben Sie http://your_domain/nginx_status in die Adressleiste des Browsers ein, wobei your_domain der Domänenname oder die IP-Adresse Ihres Servers ist. Wenn die Konfiguration korrekt ist, wird eine Seite ähnlich der folgenden angezeigt: 🎜rrreee🎜 Darunter stellt Aktive Verbindungen die aktuelle Anzahl aktiver Verbindungen dar; akzeptiert; >behandelt und Anfragen geben die Gesamtzahl der Anfragen seit dem Start von Nginx an; Lesen, Schreiben und Warten geben an, dass Nginx die Anzahl der Anfragen, geschriebenen Antworten und ausstehenden Verbindungen liest. 🎜🎜4. Verwenden Sie die Überwachungs-API, um Statusdaten abzurufen. 🎜Wenn Sie Nginx-Statusdaten programmgesteuert abrufen möchten, können Sie die Nginx-Überwachungs-API verwenden. Das Folgende ist ein in Python geschriebener Beispielcode, um Nginx-Statusinformationen zu erhalten: 🎜rrreee🎜 Beachten Sie, dass Sie die Variable url durch die URL Ihrer Nginx-Statusüberwachungsseite ersetzen. 🎜🎜Sie können Nginx-Statusinformationen abrufen und ausdrucken, indem Sie die Funktion get_nginx_status aufrufen. Die von dieser Funktion zurückgegebenen Statusinformationen sind eine Zeichenfolge, die mit der identisch ist, die Sie sehen, wenn Sie über einen Browser auf die Statusüberwachungsseite zugreifen. 🎜🎜Zusammenfassung: 🎜Nginx bietet leistungsstarke Überwachungsfunktionen, die uns helfen können, den Betrieb der Website in Echtzeit zu verstehen. Durch die Konfiguration des Moduls ngx_http_stub_status_module können wir gleichzeitig direkt auf die Nginx-Statusüberwachungsseite im Browser zugreifen und über die Nginx-Überwachungs-API auch programmgesteuert die Nginx-Statusinformationen abrufen, was praktisch ist für die Weiterverarbeitung und Analyse. Das Obige zeigt, wie Nginx die Statuskonfiguration in Echtzeit überwacht. Ich hoffe, dass es für alle hilfreich ist. 🎜

Das obige ist der detaillierte Inhalt vonNginx überwacht die Statuskonfiguration in Echtzeit und hält sich über den Betriebsstatus der Website auf dem Laufenden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn