在平时的运维工作中,我们运维人员需要清楚自己网站每天的总访问量、总带宽、ip统计和url统计等。虽然网站已经在服务商那里做了CDN加速,所以网站流量压力都在前方CDN层了像每日PV,带宽,ip统计等数据也都可以在他们后台里查看到的。------------------------------------------------------------------------------在这里,还是分享一个很早前用到过的shell统计脚本,可以结合crontab计划任务,每天给你的邮箱发送一个统计报告~...
统计ip及此ip访问的pv数#awk ‘{s[$1]++}END{for(key in s) print key,s[key]}‘ 12.log | sort -k2rn | head650) this.width=650;" src="/upload/getfiles/default/2022/11/9/20221109015919947.jpg" title="NTT5(WKP9ZIO[$LM@OSKS8C.png" />统计当前网络各种状态的连接数#netstat -na | awk ‘/^tcp/{s[$6]++}END{for(key in s) print key,s[key]}‘650) this.width=650;" src="/upload/getfiles/default/2022/11/9/202211090159...
#!/bin/bashlist=`awk ‘/19:/,/21:/{print $10}‘ /data/opt/nginx/logs/access.log | tr -d "[[:punct:]]|[[:alpha:]]"`
sum=0
for i in $list;do
sum=$[$sum+$i]
done
echo $sum本文出自 “学無止境” 博客,请务必保留此出处http://dashui.blog.51cto.com/11254923/1901954原文:http://dashui.blog.51cto.com/11254923/1901954
如果想看看Nginx有多少IP访问量,有哪些国家访问,并显示IP地址的归属地分布,python可以结合使用高春辉老师ipip.net【免费版 IP 地址数据库】,Shell可以使用nali,我这边主要使用python语言来实现需求,并将查询结果以邮件形式发送,也是为了学习和回顾python语言。很感谢高春辉老师提供的免费版IP地址数据库。一、Ningx日志如下:41.42.97.104 - - [26/Feb/2015:03:35:40 -0500] "GET /root/ HTTP/1.1" 301 20 "http://baibai.12...
本文主要使用的是grep,awk,cut等工具来对nginx日志进行统计和分析,具体如下:1,列出当天访问最多次数的ip地址cut -d- -f 1 /usr/local/nginx/logs/20160329/access_2016032913.log |uniq -c | sort -rn | head -20 [root@httpservera 20160329]# cut -d- -f 1 /usr/local/nginx/logs/20160329/access_2016032913.log |uniq -c | sort -rn | head -20
69 180.116.214.31
45 180.116.214.31
45 180.116.214.31 ...
#! /bin/sh#############################split today and yesterdayfor i in $(seq 10)do echo " " >> /u1/hadoop-stat/stat.logdoneecho "begin["`date "+%Y-%m-%d" -d "-1 days"`"]" >> /u1/hadoop-stat/stat.log#############################remove filefunction removeFilepathNotCurrentMonth(){month=`date "+%Y-%m" -d "-1 days"`for file in ` ls $1 `doif [ "$month" != "$file" ]; thenrm -rf $1"/"$filefidone}GYLOG...
日志样本: 囧,日志格式是我随便定得(莫喷,在明珠时有专门的数据组统计日志,日志都非常规范,在这完全乱套了),为了方便统计支付成功的总金额旁边都空了个空格,这样的话方便使用awk取出金额! ?12[INFO] 2014-11-0515:30:31,067[http-bio-8060-exec-24] [com.xxxx.service.impl.PayServiceImpl.updatePayOver:56]module:[PAY],orderid:[xxxxxxx],trade_no:[xxxxxxxx],total_fee:[2560.0],payMethod:[百度钱包][INFO] 2014-11...
标题:日志统计小明维护着一个程序员论坛。现在他收集了一份"点赞"日志,日志共有N行。其中每一行的格式是:ts id 表示在ts时刻编号id的帖子收到一个"赞"。 现在小明想统计有哪些帖子曾经是"热帖"。如果一个帖子曾在任意一个长度为D的时间段内收到不少于K个赞,小明就认为这个帖子曾是"热帖"。 具体来说,如果存在某个时刻T满足该帖在[T, T+D)这段时间内(注意是左闭右开区间)收到不少于K个赞,该帖就曾是"热帖"。 给定日志,请你帮...
1、把IP数量直接输出显示:cat access_log_2011_06_26.log |awk ‘{print $1}’|uniq -c|wc -l2、把IP数量输出到文本显示:cat access_log_2011_06_26.log |awk ‘{print $1}’|uniq -c|wc -l > ip.txt总结:如果单个访问日志大小超过2G,用这个命令查看时很占系统资源,系统负载会上升;所以在服务器高负载时不要查看,最好在低负载时间段查看。上面截图是公司其中一台广告服务器的一天ip访问量,这个访问量其实还包括了搜索引擎的...
使用uniq命令可以过滤掉文本文件中重复的行以及统计等等功能,同时它也接受来着管道的输入。借助awk,甚至可以对行中的列进行操作,例如统计nginx日志信息中独立ip数、列出访问次数最多的ip等。需要注意的地方是uniq只对相连的行进行处理,所以一般情况下要先进行sort操作。假设有名为test.txt文本文件,其信息为:ab
ac
ab
ac
ac
ad
ac执行命令uniq test.txt此时得到的结果为:ab
ac
ab
ac
ad
ac从结果可以看到,这里只对3,4行的a...
function topIp($logfile,$length=3){ $handle = fopen($logfile, 'r'); $countip = array();//统计ip if ($handle) { while ($buffer = fgets($handle)) {//逐行读取文件 $arr = preg_split('/\t/',$buffer); if(strstr($arr[2],"small")){//小图 //ip为键,出现次数为指 $countip[$arr[1]] = $countip[$arr[1]] ? ++$countip[$arr[1]] : 1; } ...
代码如下:$useragent = addslashes(strtolower($_SERVER['HTTP_USER_AGENT'])); if (strpos($useragent, 'googlebot')!== false){$bot = 'Google';} elseif (strpos($useragent,'mediapartners-google') !== false){$bot = 'Google Adsense';} elseif (strpos($useragent,'baiduspider') !== false){$bot = 'Baidu';} elseif (strpos($useragent,'sogou spider') !== false){$bot = 'Sogou';} elseif (strpos($useragent,'sogou we...
前言
即将用到爬虫,于是打算收集一下User Agent(UA)数据。接着马上想到自己网站的访问日志不就是现成的优质数据源吗?于是愉快的决定写个脚本统计一下Nginx访问日志中的UA信息。
这类简单操作,用脚本语言就足够,毫无疑问肯定要用最熟悉的PHP。打开vim就开撸,十几分钟下来,功能简单的统计脚本就搞定了。
脚本目前有三个功能:
1. 找出所有的UA信息并排序; 2. 统计操作系统数据; 3. 统计浏览器数据。
程序运行截图如下:
1、U...
/* 程序:访问日志统计 作者:放弃思考 (QQ:376123224) 日期:2005-7-22 */
################################## ###############函数部分###########
function Format2UnixTime ($str) { /* 该函数为格式转换函数,将类似的:$str = "03/Mar/2005:16:53:32"转化为相应的UNIX时间戳。 */ $time = $str; $time = str_replace("/"," ",$time); $time_array = explode( ":",$time,2); $time = $time...
代码如下:$useragent = addslashes(strtolower($_SERVER['HTTP_USER_AGENT'])); if (strpos($useragent, 'googlebot')!== false){$bot = 'Google';} elseif (strpos($useragent,'mediapartners-google') !== false){$bot = 'Google Adsense';} elseif (strpos($useragent,'baiduspider') !== false){$bot = 'Baidu';} elseif (strpos($useragent,'sogou spider') !== false){$bot = 'Sogou';} elseif (strpos($useragent,'sogou we...