利用Nginx日志监控服务器状态是一个重要的运维手段,可以帮助你实时了解服务器的运行状况,及时发现并解决问题。以下是一些常见的方法和工具:
Nginx的日志文件通常位于 /var/log/nginx/
目录下,包括 access.log
(访问日志)和 error.log
(错误日志)。日志格式可以在Nginx配置文件 nginx.conf
中通过 log_format
指令进行自定义。
grep "404" /var/log/nginx/access.log
awk '{print $9}' /var/log/nginx/access.log | sort | uniq -c | sort -n
tail -f /var/log/nginx/access.log
sudo apt-get install goaccess
goaccess /var/log/nginx/access.log -o report.html --log-format=COMBINED
Nginx提供了一个内置的状态信息监控页面,可以通过 stub_status
模块实现。默认情况下,该功能是关闭的,需要在配置文件中开启并指定URI来访问数据。
server {
listen 80;
server_name default_server;
location /status {
stub_status on;
allow 127.0.0.1; # 允许的IP列表
}
}
重启Nginx后,可以通过浏览器访问 http://<your-nginx-ip>/status
查看状态监控信息。
sudo pip install ngxtop
ngxtop
sudo apt-get install logwatch
sudo logwatch
通过上述方法和工具,你可以有效地利用Nginx日志来监控服务器状态,确保服务的稳定运行。