Maison > Article > Opération et maintenance > Nginx surveille la configuration de l'état en temps réel et comprend l'état de fonctionnement du site Web à temps
Nginx surveille la configuration de l'état en temps réel et comprend l'état de fonctionnement du site Web à temps
Lorsque le site Web est en cours d'exécution, il est très important de connaître l'état en temps réel du serveur. Nginx est un logiciel de serveur Web très populaire qui fournit de nombreuses fonctions de surveillance pour nous aider à comprendre le fonctionnement du site Web. Cet article explique comment configurer la surveillance en temps réel de Nginx et fournit quelques exemples de code à titre de référence.
1. Installez Nginx
Tout d'abord, nous devons installer le serveur Nginx. Vous pouvez le compiler et l'installer, ou vous pouvez utiliser un gestionnaire de packages pour l'installer. En prenant le système Ubuntu comme exemple, vous pouvez utiliser la commande suivante pour installer :
sudo apt-get update sudo apt-get install nginx
Une fois l'installation terminée, vous pouvez utiliser la commande suivante pour vérifier si l'installation a réussi :
nginx -v
Si le numéro de version peut être affiché , cela signifie que l'installation est réussie.
2. Configurer le module de surveillance Nginx
Nginx fournit un module très pratique appelé ngx_http_stub_status_module
, qui peut être utilisé pour surveiller l'état de Nginx en temps réel. Voici les étapes pour configurer ce module : ngx_http_stub_status_module
,可以用来实时监控Nginx的状态。下面是配置该模块的步骤:
确认Nginx配置文件位置。通常情况下,Nginx的配置文件位于/etc/nginx/nginx.conf
或者/etc/nginx/conf.d/default.conf
。可以使用以下命令来确认配置文件的位置:
nginx -t
编辑配置文件。使用文本编辑器打开Nginx的配置文件:
sudo vi /etc/nginx/conf.d/default.conf
在配置文件中添加以下内容:
location /nginx_status { stub_status on; access_log off; allow 127.0.0.1; deny all; }
上述配置将在路径/nginx_status
下开启状态监控,并限制只能通过本地访问。
保存并退出配置文件。重启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
表示当前活跃连接数;accepts
、handled
和requests
表示自Nginx启动以来的总请求数;Reading
、Writing
和Waiting
表示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
/etc/nginx/nginx.conf
ou /etc/nginx/conf.d/default.conf
. Vous pouvez utiliser la commande suivante pour confirmer l'emplacement du fichier de configuration : 🎜rrreee/nginx_status code> et restreindre l’accès à l’accès local uniquement. 🎜
http://your_domain/nginx_status
dans la barre d'adresse du navigateur, où your_domain
est le nom de domaine ou l'adresse IP de votre serveur. Si la configuration est correcte, vous verrez une page similaire à la suivante : 🎜rrreee🎜 Parmi elles, Connexions actives
représente le nombre actuel de connexions actives accepte
, >handled
et requests
indiquent le nombre total de requêtes depuis le démarrage de Nginx en Reading
, Writing
et Waiting
; > indique que Nginx lit le nombre de requêtes, de réponses écrites et de connexions en attente. 🎜🎜4. Utilisez l'API de surveillance pour obtenir des données d'état🎜Si vous souhaitez obtenir des données d'état de Nginx par programme, vous pouvez utiliser l'API de surveillance de Nginx. Voici un exemple de code écrit en Python pour obtenir des informations sur l'état de Nginx : 🎜rrreee🎜 Notez le remplacement de la variable url
par l'URL de votre page de surveillance de l'état de Nginx. 🎜🎜Vous pouvez obtenir des informations sur l'état de Nginx en appelant la fonction get_nginx_status
et en les imprimant. Les informations d'état renvoyées par cette fonction sont une chaîne identique à celle que vous voyez lorsque vous accédez à la page de surveillance de l'état via un navigateur. 🎜🎜Résumé : 🎜Nginx fournit de puissantes fonctions de surveillance qui peuvent nous aider à comprendre le fonctionnement du site Web en temps réel. En configurant le module ngx_http_stub_status_module
, nous pouvons accéder directement à la page de surveillance de l'état de Nginx dans le navigateur ; en même temps, en utilisant l'API de surveillance de Nginx, nous pouvons également obtenir par programme les informations sur l'état de Nginx, ce qui est pratique. pour utilisation Traitement et analyse ultérieurs. Ce qui précède explique comment Nginx surveille la configuration de l'état en temps réel. J'espère que cela sera utile à tout le monde. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!