zoukankan      html  css  js  c++  java
  • Linux分析日志获取最多访问的前10个IP

    原文地址:http://xuqq999.blog.51cto.com/3357083/774714

     apache日志分析可以获得很多有用的信息,现在来试试最基本的,获取最多访问的前10个IP地址及访问次数。

    既然是统计,那么awk是必不可少的,好用而高效。

    命令如下:

    awk '{a[$1] += 1;} END {for (i in a) printf("%d %s ", a[i], i);}' 日志文件 | sort -n | tail

    首先用awk统计出来一个列表,然后用sort进行排序,最后用tail取最后的10个。

    以上参数可以略作修改显示更多的数据,比如将tail加上-n参数等,另外日志格式不同命令也可能需要稍作修改。

    当前WEB服务器中联接次数最多的ip地址

    #netstat -ntu |awk '{print $5}' |sort | uniq -c| sort -nr

    查看日志中访问次数最多的前10个IP

    #cat access_log |cut -d ' ' -f 1 | sort |uniq -c | sort -nr | awk '{print $0 }' | head -n 10 | less

    查看日志中出现100次以上的IP

    #cat access_log |cut -d ' ' -f 1 | sort |uniq -c | awk '{if ($1 > 100) print $0}'|sort -nr | less

     

    查看最近访问量最高的文件

    #cat access_log | tail -10000 | awk '{print $7}' | sort | uniq -c | sort -nr | less

    查看日志中访问超过100次的页面

    #cat access_log | cut -d ' ' -f 7 | sort |uniq -c | awk '{if ($1 > 100) print $0}' | less

    统计某url,一天的访问次数

    #cat access_log | grep '12/Aug/2009' | grep '/images/index/e1.gif' | wc | awk '{print $1}'

    前五天的访问次数最多的网页

    #cat access_log | awk '{print $7}' | uniq -c | sort -n -r | head -20

    从日志里查看该ip在干嘛

    #cat access_log | grep 218.66.36.119 | awk '{print $1" "$7}' | sort | uniq -c | sort -nr | less

    列出传输时间超过 30 秒的文件

    #cat access_log | awk '($NF > 30){print $7}' | sort -n | uniq -c | sort -nr | head -20

    列出最最耗时的页面(超过60秒的)

    #cat access_log | awk '($NF > 60 && $7~/.PHP/){print $7}' | sort -n | uniq -c | sort -nr | head -100

  • 相关阅读:
    ubuntu 11.10下 配置环境变量 对 adb无效
    一个NB的博客 个人感觉非常有用
    SVN 错误提交配置文件,
    代码格式真的很重要
    图解DB2体系结构(转)
    DB2基本概念——实例,数据库,模式,表空间
    DB2 数据库安全总述
    DB2关于标识列(自增列)的对比试验、使用示例
    DB2的SQL编程(转)
    DB2 数据类型(转)
  • 原文地址:https://www.cnblogs.com/already/p/6244301.html
Copyright © 2011-2022 走看看