发表于: 2017-07-18 23:18:34
2 1105
今天:
写了一条shell命令,统计nginx中响应时间超过x秒的条数。
awk -F- '$2>x' access.log | sort -n | uniq | wc -l
nginx日志的格式:
log_format main '$remote_addr - $request_time - $remote_user [$time_local] '
'"$request" $status $body_bytes_sent'
'"$http_referer" "$http_user_agent"';
输出实际效果:
111.132.118.142 - 0.015 - - [18/Jul/2017:17:07:35 +0800] "GET /task2/a/student/9 HTTP/1.1" 200 144"-" "PostmanRuntime/6.1.6"
参考:
使用-分割 输出日志第二项
awk -F- '{print $2}' access.log ---输出的是0.0015
输出大于0.001 的
awk -F- '$2>0.001' access.log
参考统计ip访问量的语句:
统计ip访问量:
awk '{print $1}' access.log | sort -n | uniq | wc -l
统计行数
awk -F- '$2>0.001' access.log | sort -n | uniq | wc -l
最终shell脚本如下:
#!/bin/bash
log_path=/var/log/nginx/access.log
export.GB2312;
ip_pv=`awk '{ip[$1]++}END{for (k in ip){print ip[k],k}}' ${log_path} | sort -rn | head -20`
total_visit=`wc -l ${log_path} | awk '{print $1}'`
d=`awk -F- '$2>0.007' access.log | sort -n | uniq | wc -l`
echo -e "总访问量-${total_visit}\nip-${ip_pv}\时间超过0.007毫秒的有${d}条"
遇到问题:
1.将项目打成war包部署到服务器resin上后,通过配置什么把项目里log4j日志输出出来?
2.No qualifying bean of type 'com.dj.service.StudentService' available: expected single matching bean but found 2: StudentServiceImpl,studentServiceImpl
注释掉下句
明天要做:
log4j中有如下路径,看了下ubuntu上 有/home/ubuntu/logs,但没有app.log,自己建了一个app.log,postman访问后app.log中没日志记录。到底是配置错误还是方法错误?
暂跳过此处,完成任务三深度思考,梳理下任务三目的和学到的内容。
评论