zoukankan      html  css  js  c++  java
  • nginx日志提取案列

    nginx日志提取案例:

    1、过滤日志的$body_bytes_sent 字段最大值输入到/opt/body_bytes_sent.txt (5分)

    cat paas_inner_access.log |awk 'BEGIN {max = 0} {if ($10+0 > max+0) max=$10} END {print "Max=", max}'
    cat /opt/paas_inner_access.log |awk '{print $10}' | sort -nr | uniq | head -1 > /opt/body_bytes_sent.txt
    

    2、统计一分钟/api/c/compapi/cc/get_app_list接口POST请求出现的次数,并把命令和结果输出到post_60.txt;(5分) --(截图)

    awk '/POST /api.*get_app_list/{print $0}' paas_inner_access.log | egrep "2020:11:[3-4]" >  post.txt
    cat /opt/paas_inner_access.log | grep "/api/c/compapi/cc/get_app_list" | grep "2020:10:30" | grep "POST" |uniq -c | awk '{print $1}' > /opt/post_60.txt
    

    3、过滤每秒对应的POST请求的次数。格式为 "时间 - 访问路径 - POST 请求次数 ”  导入到文件/opt/post_sum.txt,写下解题思路或命令; (5分) --(截图)

    cat /opt/paas_inner_access.log |  grep "POST" | awk -F "Nov/" '{print $2}' | awk '{print $1" "$4}' | sort -n -k1 |uniq -c | awk '{print $2"-"$3"-"$1}'
    

    4、根据访问IP统计UV --(截图包含命令)

    awk '{print $1}' paas_inner_access.log | wc -l 
    

    5、根据访问URL统计PV --(截图包含命令)

    awk '{print $7}' paas_inner_access.log | sort  -r | uniq | wc -l
    

    6、统计访问最多的前10个页面 --(截图包含命令)

    awk '{a[$7]++}END{for(i in a)print i,a[i]|"sort -k2 -nr"}' paas_inner_access.log | head -10
    

    7、统计访问最频繁的IP --(截图包含命令)

    awk '{a[$1]++}END{for(i in a)print i,a[i]|"sort -k2 -nr"}' paas_inner_access.log | head -10
    

    8、根据时间段统计查看日志 --(截图包含命令)

    sed -n '/2020:11:00/,/2020:11:05/p' paas_inner_access.log
    

    9、统计当日的的pv和uv

    grep "04/Dec/2020" paas_inner_access.log | awk '{print $1}' paas_inner_access.log | wc -l   # PV
    grep "04/Dec/2020" paas_inner_access.log | awk '{print $7}' paas_inner_access.log | wc -l   # UV
    

    10、获取最耗时的请求时间、url、耗时 --(截图包含命令)Paas日志没有请求处理时间,演示使用cmdb日志

    awk '{print $4,$7,$15}' cmdb_access.log  |sort -nr -k3 | head -1
    

    11、获取每分钟的请求数量 --(截图包含命令)

    awk '{print $4}' paas_inner_access.log | awk -F":" '{print $1":"$2":"$3}' | awk '{a[$1]++}END{for(i in a)print i,a[i]}'
    

    12、查看某个时间段之间的ip访问个数 --(截图包含命令)

    sed -n '/2020:11:00/,/2020:11:05/p' paas_inner_access.log | awk '{print $1}' | sort -nr | uniq -c
    

    13、统计每个URL访问内容的总大小 --(截图包含命令)

    awk '{sum[$7]+=$10}END{for(url in sum){print url,sum[url]}}' /opt/paas_inner_access.log |sort -nr -k2
    
    努力到无能为力,拼搏到感动自己。
  • 相关阅读:
    js的浅拷贝与深拷贝
    用Nodejs连接MySQL(原文链接)
    HTML5交互性图表库
    GitHub Desktop离线安装包
    docker--Dockerfile--sonarqube
    docker --Nexus仓库
    docker --Dockerfile--一些语法
    zookeeper 四字命令
    docker --swarm创建一个集群
    docker --swarm启动2375端口监听
  • 原文地址:https://www.cnblogs.com/jin-yuana/p/14793014.html
Copyright © 2011-2022 走看看