Nginx日志

本文介绍了Nginx日志的管理和切割,详细解析了日志格式及其内置变量,以及日志的存储目录和分类。在日志切割配置中,提到了使用logrotate工具,并展示了配置示例。日志格式部分,讲解了如$remote_addr、$http_referer等关键变量的含义。同时,指出了在反向代理场景下如何获取客户端真实IP的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、Nginx日志切割管理

        1.1、Nginx切割日志管理的目录在

        /etc/logrotate.d/nginx 默认Nginx给做好了,不需要我们自己配置

/var/log/nginx/*.log {
        daily
        missingok
        rotate 52
        compress
        delaycompress
        notifempty
        create 640 nginx adm
        sharedscripts
        postrotate
                if [ -f /var/run/nginx.pid ]; then
                        kill -USR1 `cat /var/run/nginx.pid`
                fi
        endscript
}

2、Nginx日志格式

        2.1、 日志格式的定义

# 日志格式的定义 
log_format  main  '$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  main;

        2.2、日志格式允许包含的内置变量

$remote_addr			记录客户端IP地址
$remote_user			记录客户端用户名
$time_local				记录通用的本地时间
$time_iso8601			记录ISO8601标准格式下的本地时间
$request				记录请求的方法以及请求的http协议
$status					记录请求状态码(用于定位错误信息)
$body_bytes_sent		发送给客户端的资源字节数,不包括响应头的大小
$bytes_sent				发送给客户端的总字节数
$msec					日志写入时间。单位为秒,精度是毫秒
$http_referer			记录从哪个页面链接访问过来的
$http_user_agent		记录客户端浏览器相关信息
$http_x_forwarded_for	记录客户端IP地址
$request_length			请求的长度(包括请求行,请求头和请求正文)
$request_time			请求话费的时间,单位为秒,精度毫秒

注意:
1、如果Nginx位于负载均衡器,Nginx反向代理之后,web服务器无法直接获取到 客户端真实的IP地址。
2、$remote_addr 获取的是反向代理的IP地址。反向代理服务器在转发请求的http头信息中。
3、增加X-Forwarded-For 信息,用来记录客户端IP地址和客户端请求的服务器地址。

3、日志分类

        Nginx日志存放目录在,/var/log/nginx

        分为:

        access.log        访问日志

        error.log            错误日志


-rw-r-----. 1 nginx adm    0 12月  7 03:26 access.log
-rw-r-----. 1 nginx adm  430 12月  6 18:11 access.log-20211207
-rw-r-----. 1 nginx adm    0 12月  7 03:26 error.log
-rw-r-----. 1 nginx adm 2357 12月  7 03:26 error.log-20211207

                     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值