linux工作笔记_resin日志分析
1、显示不包含'Mozilla'的行。
cat resin.log | grep -v 'Mozilla' | more
说明:
grep -v 就是不包含,去掉-v就是包含
2、只能内容输出到文件,也可将分析的结果写入文件
echo hello > 1.txt
3、输出响应码为200的记录。
cat resin.log | awk '{if($10 == 200) print $0}' | more
说明:
$10表示第10列
$0表示所有列
$NF表示最后一列
awk -F 参数可以指定列的分隔符,默认为空格 例如 more resin.log | awk -F. '{print $0}' 用"." 作为分隔符
4、统计行数
cat resin.log | wc -l
说明:
wc -l 显示行数
5、排序
sort -r -n -k 1 resin.log | more
说明:
-r 倒序
-n 表示排序按照数字类型
-k n 表示对第n列排序
6、对第10列进行排序,排重,并显示该行重复出现次数。
cat resin.log | awk '{print $10}' | sort -nr | uniq -c
说明:
uniq -c 表示排重,并显示重复出现的次数
7、计算第一列相加的和
awk '{print sum += $1}'
8、统计响应时间在1秒以上的“秒数以及对应的个数”
cat resin.log | awk '{if($1 > 1000000) print expr int($1/1000000)}' | sort -nr | uniq -c
9、请求时间大于1秒的,按区间统计
cat resin.log | awk '{if($1<1000000) print expr int($1/1000000)}' | sort -rnk 1 | uniq -c
cat resin.log | awk '{if($1>1000000 && $1<2000000) print expr int($1/1000000)}' | sort -rnk 1 | uniq -c
cat resin.log | awk '{if($1>2000000 && $1<5000000) print expr int($1/1000000)}' | sort -rnk 1 | uniq -c
cat resin.log | awk '{if($1>5000000 && $1<10000000) print expr int($1/1000000)}' | sort -rnk 1 | uniq -c
cat resin.log | awk '{if($1>10000000) print expr int($1/1000000)}' | sort -rnk 1 | uniq -c
10、最慢的20个请求
11、找到目录下的所有文件,依次执行 grep 命令
find /ROOT/logs/nginx/ | xargs grep "template=resumeshare"