暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

nginx中access.log介绍

2272

access.log的作用

    统计站点访问ip来源、某个时间段的访问频率。

    查看访问最频的页面、Http响应状态码、接口性能 。

    接口秒级访问量、分钟访问量、小时和天访问量。


默认日志的格式

【通常默认就够用了,也可以自己添加一些配置】

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    # '$status $body_bytes_sent "$http_referer" '
    # '"$http_user_agent" "$http_x_forwarded_for"';
    复制

    某条日志具体实例

      122.70.148.18 - - [04/Aug/2020:14:46:48 +0800] "GET user/api/v1/product/order/query_state?product_id=1&token=xdclasseyJhbGciOJE HTTP/1.1" 
      200 48 "https://merlinsea.net/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
      复制


      实例中字段含义解析

        $remote_addr 对应的是真实日志里的122.70.148.18,即客户端的IP。
        【可以根据这些客户端ip来统计用户访问的地理位置分布情况】


        $remote_user 对应的是第二个中杠“-”,没有远程用户,所以用“-”填充。


        [$time_local]对应的是[04/Aug/2020:14:46:48 +0800]。


        “$request”对应的是"GET user/api/v1/product/order/query_state?product_id=1&token=xdclasseyJhbGciOJE HTTP/1.1"
        【可以用于统计哪些接口压力比较大,访问比较高】


        $status对应的是200状态码,200表示正常访问。
        【可以用于统计访问成功率】


        $body_bytes_sent对应的是48字节,即响应报文的body的大小。


        “$http_referer” 对应的是”https://xdclass.net/“,若是直接打开域名浏览的时,referer就会没有值,为”-“。
        【请求来源,可以用于防盗链,即如果用户这个请求不是从xdclass.net官网发出的可以拒绝提供服务】


        “$http_user_agent” 对应的是”Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:56.0) Gecko/20100101 Firefox/56.0”。
        【可以用于记录是否是爬虫获取,因为如果是爬虫的话那么这个字段就为空或者-】


        “$http_x_forwarded_for” 对应的是”-“或者空。


        复制


        根据access.log统计访问最频繁的ip

          将access.log拷贝一份出来,然后进行统计
          awk '{print $1}' access_temp.log | sort -n |uniq -c | sort -rn | head -n 100
          复制



          文章转载自梁霖编程工具库,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

          评论