CDN日志过滤方法

  • 2019 年 10 月 6 日
  • 筆記

CDN日志往往记录较大,单纯使用grep和cat无法彻底进行统计分析,这种情况下可以使用zcat和awk来进行

日志格式

腾讯云官方给出的回源日志格式如下:

请求时间、客户端IP、访问域名、文件路径、字节数、省份编码、运营商编码、HTTP状态码、referer、Request-Time、UA、range、HTTP Method、协议标识、缓存HIT/MISS

Zcat使用方法

Zcat可以直接对gz格式的文件进行查看分析,并且进行过滤,日志大部分都是常用方法如下:

-S:指定gzip格式的压缩包的后缀。当后缀不是标准压缩包后缀时使用此选项; -c:将文件内容写到标注输出; -d:执行解压缩操作; -l:显示压缩包中文件的列表; -L:显示软件许可信息; -q:禁用警告信息; -r:在目录上执行递归操作; -t:测试压缩文件的完整性; -V:显示指令的版本信息; -l:更快的压缩速度; -9:更高的压缩比。

Awk筛选

1、查看访问次数较多的文件信息,并排序: zcat *.gz|awk ‘{print $2,$4}’|sort|uniq -c|sort -rn

2、查看访问404的client ip信息和具体文件: zcat *.gz|awk ‘{if ($8==404) {print $2,$4}}’| sort | uniq -c | sort -rn

3、查看访问miss状态的文件信息,client ip,状态码信息: zcat *.gz | awk ‘{if ($NF=”miss”){print $2,$4,$8}}’|sort|uniq -c|sort -rn

4、查看访问次数最多的client ip信息: zcat *.gz | awk ‘{print $2}’|sort|uniq -c|sort -rn

5、指定文件路径:/index.php/45.html的访问日志 zcat *.gz | awk ‘{if ($4==”/index.php/45.html”) print $2,$4}’