Nginx¼à¿Øʵʱ״̬ÉèÖã¬ÊµÊ±ÏàʶÍøÕ¾ÔËÐÐÇéÐÎ
nginx¼à¿Øʵʱ״̬ÉèÖã¬ÊµÊ±ÏàʶÍøÕ¾ÔËÐÐÇéÐÎ
ÔÚÍøÕ¾ÔËÐÐÖУ¬ÏàʶЧÀÍÆ÷µÄʵʱ״̬ºÜÊÇÖ÷Òª¡£NginxÊÇÒ»¿îºÜÊÇÊ¢ÐеÄwebЧÀÍÆ÷Èí¼þ£¬ÌṩÁËÐí¶à¼à¿Ø¹¦Ð§£¬¿ÉÒÔ×ÊÖúÎÒÃÇÏàʶÍøÕ¾µÄÔËÐÐÇéÐΡ£±¾ÎĽ«ÏÈÈÝÔõÑùÉèÖÃNginxʵʱ¼à¿ØµÄÒªÁ죬²¢ÌṩһЩ´úÂëʾÀý¹©²Î¿¼¡£
Ò»¡¢×°ÖÃNginx
Ê×ÏÈ£¬ÎÒÃÇÐèҪװÖÃNginxЧÀÍÆ÷¡£¿ÉÒÔ½ÓÄɱàÒë×°ÖõÄÒªÁ죬Ҳ¿ÉÒÔʹÓðü¹ÜÀíÆ÷¾ÙÐÐ×°Öá£ÒÔUbuntuϵͳΪÀý£¬¿ÉÒÔʹÓÃÒÔÏÂÏÂÁî¾ÙÐÐ×°Öãº
sudo apt-get update sudo apt-get install nginx
µÇ¼ºó¸´ÖÆ
×°ÖÃÍê³Éºó£¬¿ÉÒÔʹÓÃÒÔÏÂÏÂÁîÑéÖ¤ÊÇ·ñ×°ÖÃÀֳɣº
nginx -v
µÇ¼ºó¸´ÖÆ
ÈôÊÇÄܹ»ÏÔʾ°æ±¾ºÅ£¬ÔòÌåÏÖ×°ÖÃÀֳɡ£
¶þ¡¢ÉèÖÃNginx¼à¿ØÄ£¿é
NginxÌṩÁËÒ»¸öºÜÊÇÀû±ãµÄÄ£¿é£¬½Ð×ö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Ï¿ªÆô״̬¼à¿Ø£¬²¢ÏÞÖÆÖ»ÄÜͨ¹ýÍâµØ»á¼û¡£
ÉúÑIJ¢Í˳öÉèÖÃÎļþ¡£ÖØÆô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Ä£¿é£¬ÎÒÃÇ¿ÉÒÔÔÚä¯ÀÀÆ÷ÖÐÖ±½Ó»á¼ûNginxµÄ״̬¼à¿ØÒ³Ã棻ͬʱ£¬Ê¹ÓÃNginxµÄ¼à¿ØAPI£¬ÎÒÃÇ»¹¿ÉÒÔÒÔ±à³ÌµÄ·½·¨»ñÈ¡NginxµÄ״̬ÐÅÏ¢£¬Àû±ãÓÃÓÚºóÐøµÄ´¦ÀíºÍÆÊÎö¡£ÒÔÉϾÍÊÇNginx¼à¿Øʵʱ״̬ÉèÖõÄÒªÁ죬ϣÍû¶Ô¸÷ÈËÓÐËù×ÊÖú¡£
ÒÔÉϾÍÊÇNginx¼à¿Øʵʱ״̬ÉèÖã¬ÊµÊ±ÏàʶÍøÕ¾ÔËÐÐÇéÐεÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡