centos

centos nginx日志分析方法

小樊
94
2025-02-13 09:17:56
栏目: 智能运维

在CentOS上分析Nginx日志可以通过以下几种方法进行:

日志文件位置

Nginx的日志文件通常位于 /var/log/nginx 目录下,包括:

日志文件配置

在Nginx的配置文件(通常是 /etc/nginx/nginx.conf/etc/nginx/conf.d/ 目录下的文件)中,可以通过以下指令来配置日志:

http {
    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;
    log_format custom '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    access_log /var/log/nginx/access.log custom;
}

日志分析工具

日志轮转

使用 logrotate 工具定期轮转日志文件,以避免单个日志文件过大影响系统性能,并节省磁盘空间。例如:

/var/log/nginx/*.log {
    daily
    missingok
    rotate 14
    compress
    delaycompress
    notifempty
    create 0640 www-data adm
    sharedscripts
    postrotate
        [ ! -f /var/run/nginx.pid ] || kill -USR1 `cat /var/run/nginx.pid`
    endscript
}

这段配置表示每天轮转一次日志文件,保留最近14天的日志,并对旧日志进行压缩处理。

实时监控

使用 journalctl 命令可以实时查看和管理systemd日志,适合监控系统的实时状态。例如:

日志分析实践

grep 192.168.1.1 access.log
awk '{print $5}' access.log | sort | uniq -c | sort -nr

通过上述方法,可以有效地管理和分析Nginx在CentOS上的日志文件,从而提升服务器的稳定性和安全性。

0
看了该问题的人还看了