shell脚本分析apache日志状态码
一、首先将apache日志按天切割
vi /etc/httpd/conf/httpd.conf
ErrorLog "|rotatelogs /var/log/httpd/%Y%m%derror_log 86400 480"
CustomLog "|rotatelogs /var/log/httpd/%Y%m%daccess_log 86400 480" combined
二、重启apache服务
service httpd restart
##################apahce日志服务器按天切割完毕######################
三、分析生成的apache日志状态码(等待了一天的日志)
***日志文件为20111228access_log
vi http.sh
#!/bin/bash
total=`cat 20111228access_log|wc -l`
array=(`cat 20111228access_log |awk '{print $9}'|sort|uniq -c|sort -n`)
len=${#array[@]}
echo "####################http状态码统计###########################"
echo "总的连接数:$total"
for ((i=0;i<$len;i=i+2))
{
echo "########################################################"
echo ${array[$i]}:${array[$i+1]}
echo "########################################################"
echo ${array[$i+1]}占连接数的比例是:`awk 'BEGIN{printf "%.6f%\n",('${array[$i]}'/'${total}'*100)}'`
}
执行脚本结果(以百分号表示):
sh http.sh
####################http状态码统计###########################
总的连接数:688965
########################################################
1:303
########################################################
303占连接数的比例是:0.000145%
########################################################
1:416
########################################################
416占连接数的比例是:0.000145%
########################################################
2:299
########################################################
299占连接数的比例是:0.000290%
########################################################
8:501
########################################################
501占连接数的比例是:0.001161%
########################################################
145:403
########################################################
403占连接数的比例是:0.021046%
########################################################
197:400
########################################################
400占连接数的比例是:0.028594%
########################################################
738:206
########################################################
206占连接数的比例是:0.107117%
########################################################
7307:404
########################################################
404占连接数的比例是:1.060576%
########################################################
9213:302
########################################################
302占连接数的比例是:1.337223%
########################################################
30574:301
########################################################
301占连接数的比例是:4.437671%
########################################################
201197:304
########################################################
304占连接数的比例是:29.202790%
########################################################
439582:200
########################################################
200占连接数的比例是:63.803241%
########################简单讲解#########################
array=(`cat 20111228access_log |awk '{print $9}'|sort|uniq -c|sort -n`)
###这个拿出来是一个数组了
len=${#array[@]}
###这个是数组的长度
echo ${array[$i]}:${array[$i+1]}
###这个是以for循环输入状态码和状态码的连接数
awk 'BEGIN{printf "%.6f%\n",('${array[$i]}'/'${total}'*100)}
###以百分比计算各个状态码大约占的连接数
shell脚本分析apache日志状态码的更多相关文章
- shell脚本分析nginx日志
shell脚本分析nginx日志: name=`awk -F ',' '{print $13":"$32}' $file | awk -F ':' '{print $4}'`ech ...
- shell脚本之变量与状态码
目录: 前言 如何创建一个脚本 脚本调试 变量相关 变量的命令规则 bash中变量的种类 本地变量 环境变量 只读和位置变量 位置变量 查询变量 进程的退出状态与状态码 前言 在linux管理中,sh ...
- shell脚本分析 nginx日志访问次数最多及最耗时的页面
当服务器压力比较大,跑起来很费力时候.我们经常做站点页面优化,会去查找那些页面访问次数比较多,而且比较费时. 找到那些访问次数高,并且比较耗时的地址,就行相关优化,会取得立竿见影的效果的. 下面是我在 ...
- 如何用shell脚本分析网站日志统计PV、404、500等数据
以下shell脚本能统计出网站的总访问量,以及404,500出现的次数.统计出来后,可以结合监控宝来进行记录,进而可以看出网站访问量是否异常,是否存在攻击.还可以根据查看500出现的次数,进而判断网站 ...
- shell脚本实现网站日志分析统计
如何用shell脚本分析与统计每天的访问日志,并发送到电子邮箱,以方便每天了解网站情况.今天脚本小编为大家介绍一款不错的shell脚本,可以实现如上功能. 本脚本统计了:1.总访问量2.总带宽3.独立 ...
- elk系列7之通过grok分析apache日志【转】
preface 说道分析日志,我们知道的采集方式有2种: 通过grok在logstash的filter里面过滤匹配. logstash --> redis --> python(py脚本过 ...
- Hadoop的shell脚本分析
你会发现hadoop-daemon.sh用于启动单独的本机节点 而hadoop-daemons.sh 会批量的ssh到别的机器启动 前记: 这些天一直学习hadoop,学习中也遇到了许多的问题,主要是 ...
- 如何分析apache日志[access_log(访问日志)和error_log(错误日志)]
如何分析apache日志[access_log(访问日志)和error_log(错误日志)] 发布时间: 2013-12-17 浏览次数:205 分类: 服务器 默认Apache运行会access_l ...
- shell 在手分析服务器日志【转】
自己的小网站跑在阿里云的 ECS 上面, 偶尔也去分析分析自己网站服务器日志,看看网站的访问量.看看有没有黑阔搞破坏!于是收集,整理一些服务器日志分析命令,大家可以试试! awk '{print $1 ...
随机推荐
- ASP.NET WebApi总结之自定义权限验证
在.NET中有两个AuthorizeAttribute类, 一个定义在System.Web.Http命名空间下 #region 程序集 System.Web.Http, Version=5.2.3.0 ...
- 使用echarts绘制漂亮的渐变键盘仪表盘
echarts官方示例和默认样式都比较难看,经过一顿捣鼓实现比较漂亮的渐变仪表盘. 第一步:设置轴线 将图表轴线.label.分割线.隐藏,只保留刻度,然后修改刻度样式达到最终效果.不过要注意的是ax ...
- jQuery中animate与scrollTop、offset().top实例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- HTTP请求报文支持的各种方法
常见的HTTP方法如下: 1.GET GET是最常用的方法.通常用于请求服务器发送某个资源. 2.HEAD HEAD与GET的行为类似,但服务器在响应中只返回首部,不会返回实体的部分.这就允许客户端在 ...
- Vmware下Kali设置桥接网络无法上网
1.检查是否设置桥接 2.编辑>首选项>虚拟网络编辑器>选对本机上网的网卡 3.检查上网的网卡>适配器属性栏有没有 Vmware Bridge Protocol 桥接的服务. ...
- (一)Python装饰器的通俗理解
在学习Python的过程中,我相信有很多人和我一样,对Python的装饰器一直觉得很困惑,我也是困惑了好久,并通过思考和查阅才能略有领悟,我希望以下的内容会对你有帮助,我也努力通过通俗的方式使得对Py ...
- 数据结构:广义表的实现(Java)
广义表的简单理解在这篇博文中:https://blog.csdn.net/lishanleilixin/article/details/87364496,在此不做赘述. Java实现广义表: pack ...
- 【JavaScript】类继承(对象冒充)和原型继承__深入理解原型和原型链
JavaScript里的继承方式在很多书上分了很多类型和实现方式,大体上就是两种:类继承(对象冒充)和原型继承. 类继承(对象冒充):在函数内部定义自身的属性的方法,子类继承时,用call或apply ...
- HTML03--表单、input、框架、URL
接上一篇“HTML02随笔”,在这里单独说一下HTML中最重要的标签--表单<form> 1.表单form:用于收集用户输入 <form action="" me ...
- 06-图2 Saving James Bond - Easy Version (25 分)
This time let us consider the situation in the movie "Live and Let Die" in which James Bon ...