根据weblog分析某个业务下的ip访问量

目标:
对日志做分析,获取各个模块的ip访问量。
计划方法:
1. 首先获得符合条件的访问日志记录
2. 对符合条件的记录做排序做uniq得到模块目录下唯一ip列表
3. 再使用uniq 获得各个模块的ip数量
实施步骤:
1. 提取符合条件的日志行,输出ip地址和url

  1.     cat www.access.log |awk '($7 ~ /\.php/|| $7 ~/\/mod1\//){print $1 " " $7}'

2. 通过sed从url中提取模块目录的名称

  1.     |sed -e 's/\(^\/[^\/?"]*\).*/\1/'

3. 排序求每个模块下唯一的ip

  1.     | awk '{print $2 " " $1}'  |sort |uniq

4. 对每个模块做统计倒序排列

  1.     | awk '{print $1}' | uniq -c |sort -nr

合起来:

  1. cat www.access.log |awk '($7 ~ /\.php/|| $7 ~/\/mod1\//){print $1 " " $7}'  \
  2.   |sed -e 's/\(^\/[^\/?"]*\).*/\1/'  \
  3.   | awk '{print $2 " " $1}'  |sort |uniq
  4.   | awk '{print $1}' | uniq -c |sort -nr

Popularity: 5% [?]

Related

Comments

Comments are closed.