Nginx»á¼ûÈÕÖ¾ÆÊÎöÉèÖã¬ÊµÊ±¼à²âÍøÕ¾»á¼ûÇéÐÎ
nginx»á¼ûÈÕÖ¾ÆÊÎöÉèÖã¬ÊµÊ±¼à²âÍøÕ¾»á¼ûÇéÐÎ
ÔÚÔËÓªºÍά»¤ÍøÕ¾µÄÀú³ÌÖУ¬ÏàʶÍøÕ¾µÄ»á¼ûÇéÐÎÊǺÜÊÇÖ÷ÒªµÄ¡£NginxÊÇÒ»¿î¸ßÐÔÄܵÄWebЧÀÍÆ÷£¬Æä»á¼ûÈÕÖ¾¼Í¼ÁËÍøÕ¾µÄÿһ´Î»á¼û¼Í¼£¬ÎÒÃÇ¿ÉÒÔͨ¹ý¶Ô»á¼ûÈÕÖ¾¾ÙÐÐÆÊÎöºÍ¼à²â£¬ÏàʶÓû§»á¼ûÐÐΪ¡¢ÍøÕ¾ÐÔÄܵÈÐÅÏ¢£¬×ÊÖúÎÒÃǸüºÃµØÓÅ»¯ºÍÖÎÀíÍøÕ¾¡£
Ò»¡¢Nginx»á¼ûÈÕÖ¾
NginxµÄ»á¼ûÈÕÖ¾ÎļþÊÇÓÉaccess_logÖ¸Áî¾öÒéµÄ£¬Ä¬ÈÏÇéÐÎÏ£¬NginxµÄ»á¼ûÈÕÖ¾ÎļþλÖÃÔÚ”/var/log/nginx/access.log”¡£ÎÒÃÇ¿ÉÒÔͨ¹ýÐÞ¸ÄNginxÉèÖÃÎļþÀ´¸Ä±ä»á¼ûÈÕÖ¾µÄλÖúÍÃûÌá£
ĬÈϵÄNginx»á¼ûÈÕÖ¾ÃûÌÃΪ£º
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"';
µÇ¼ºó¸´ÖÆ
¹ØÓÚÈÕÖ¾ÃûÌõÄÉèÖã¬ÎÒÃÇ¿ÉÒÔƾ֤ÐèÒª×Ô½ç˵£¬ÒÔ°üÀ¨¸ü¶àµÄÐÅÏ¢¡£ÀýÈ磬ÎÒÃÇ¿ÉÒÔÌí¼ÓÏìӦʱ¼äÐÅÏ¢£¬Í¨¹ýÐÞ¸Älog_formatÖ¸ÁîΪ£º
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" "$http_user_agent" ' '$request_time';
µÇ¼ºó¸´ÖÆ
¶þ¡¢ÊµÊ±¼à²âÍøÕ¾»á¼ûÇéÐÎ
ΪÁËʵʱ¼à²âÍøÕ¾»á¼ûÇéÐΣ¬ÎÒÃÇ¿ÉÒÔʹÓÃLinuxϵͳÖеÄһЩÏÂÁî¾ÙÐмòÆӵĹýÂ˺Íͳ¼Æ¡£ÏÂÃ棬ÒÔʵʱͳ¼ÆÍøÕ¾»á¼û×ÜÊýΪÀý£¬Ìṩһ¸öbash¾ç±¾µÄʾÀý¡£
#!/bin/bash logfile="/var/log/nginx/access.log" while true; do current_time=$(date +"%Y-%m-%d %H:%M:%S") total_access=$(tail -n 1000 $logfile | wc -l) echo "[$current_time] Total access: $total_access" sleep 10 done
µÇ¼ºó¸´ÖÆ
ÔÚÉÏÊöbash¾ç±¾ÖУ¬ÎÒÃÇʹÓÃtailÏÂÁî¶ÁÈ¡×îеÄ1000Ðлá¼ûÈÕÖ¾£¬²¢Í¨¹ýwcÏÂÁîͳ¼ÆÐÐÊý£¬»ñµÃÍøÕ¾µÄ×Ü»á¼ûÊý¡£¾ç±¾Ã¿Ö´ÐÐÒ»´Î£¬»á˯Ãß10ÃëÖÓ£¬È»ºóÔÙ´ÎÖ´ÐÐÒÔʵʱ¸üлá¼ûͳ¼ÆÊý¾Ý¡£Äã¿ÉÒÔ½«¸Ã¾ç±¾ÉúÑÄΪaccess_monitor.shÎļþ£¬²¢Ê¹ÓÃchmod +xÏÂÁÓëÖ´ÐÐȨÏÞ£¬È»ºóͨ¹ýÖ´ÐÐ./access_monitor.shÀ´ÔËÐо籾¡£
Èý¡¢¸ß¼¶ÈÕÖ¾ÆÊÎöÓë¼à²â¹¤¾ß
³ýÁËʹÓüòÆÓµÄÏÂÁî¾ÙÐÐʵʱ¼à²â£¬ÎÒÃÇ»¹¿ÉÒÔ½èÖúһЩ¸ß¼¶µÄÈÕÖ¾ÆÊÎöºÍ¼à²â¹¤¾ß£¬À´Ô½·¢ÉîÈëµØÏàʶÍøÕ¾µÄ»á¼ûÇéÐκÍÐÔÄÜ¡£
Awstats£ºAwstatsÊÇÒ»¿î¿ªÔ´µÄÍøվͳ¼Æ¹¤¾ß£¬ËüÄܹ»´ÓNginxµÄ»á¼ûÈÕÖ¾ÖÐÌáÈ¡ÓÐÓõÄÐÅÏ¢£¬²¢ÌìÉúͳ¼Æ±¨¸æ£¬°üÀ¨»á¼ûÁ¿¡¢·Ã¿ÍȪԴ¡¢Á÷Á¿ÆÊÎöµÈ£¬²¢ÒÔͼ±íµÄÐÎʽչʾ¡£
Elastic Stack£ºElastic StackÊÇÒ»¸öÇ¿Ê¢µÄÈÕÖ¾ÆÊÎöºÍ¼à²â¹¤¾ß¼¯£¬°üÀ¨Elasticsearch¡¢LogstashºÍKibana¡£ÎÒÃÇ¿ÉÒÔͨ¹ýʹÓÃLogstashÀ´½«NginxµÄ»á¼ûÈÕÖ¾µ¼Èëµ½ElasticsearchÖУ¬È»ºóʹÓÃKibana¾ÙÐÐÊý¾Ý¿ÉÊÓ»¯ºÍÆÊÎö¡£
ÕâЩ¹¤¾ß²»µ«Äܹ»Ìṩ¸ü¸»ºñµÄÊý¾ÝÆÊÎö£¬»¹¿ÉÒÔ¾ÙÐиüÉîÈëµÄÈÕÖ¾ËÑË÷Óë¹ýÂË£¬×ÊÖúÎÒÃǸüºÃµØ¼à²âÍøÕ¾µÄ»á¼ûÇéÐκÍÐÔÄÜ¡£
×ܽ᣺
ͨ¹ý¶ÔNginx»á¼ûÈÕÖ¾µÄÆÊÎöºÍ¼à²â£¬ÎÒÃÇ¿ÉÒÔ»ñÈ¡µ½Òªº¦µÄ»á¼ûÐÅÏ¢£¬×ÊÖúÎÒÃǸüºÃµØÏàʶÍøÕ¾µÄ»á¼ûÇéÐκÍÐÔÄÜ¡£ÎÞÂÛÊǼòÆÓµÄÏÂÁîÐй¤¾ßÕվɸü¸ß¼¶µÄÈÕÖ¾ÆÊÎöºÍ¼à²â¹¤¾ß£¬¶¼ÄÜΪÎÒÃÇÌṩÓмÛÖµµÄÊý¾ÝÆÊÎöºÍ¾öÒéÖ§³Ö¡£Ï£Íû±¾ÎÄÄÜ×ÊÖúÄã¸üºÃµØÉèÖúÍʹÓÃNginx»á¼ûÈÕÖ¾£¬ÊµÊ±¼à²âÍøÕ¾»á¼ûÇéÐΡ£
ÒÔÉϾÍÊÇNginx»á¼ûÈÕÖ¾ÆÊÎöÉèÖã¬ÊµÊ±¼à²âÍøÕ¾»á¼ûÇéÐεÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡