使用rrdtool统计网站PV和IP
现在网站服务器已经使用snmp进行监控,已经对CPU,内存,流量等进行了监控,但觉得还需要加一项监控,就是网站的PV和IP的监控,这样可以快速知道服务器负载上升是否是网站访问量增加的原因。这几天初学rrdtool,这个工具既能存储数据,又能画图,非常的方便。
下面是统计近一天的pv和ip图。
1、安装rrdtool
- centos: yum install rrdtool
- ubuntu: sudo apt-get install rrdtool
2、创建rrdtool数据库
- rrdtool create /var/www/test.rrd \
- -s 300 \
- DS:pv:GAUGE:600:U:U \
- DS:ip:GAUGE:600:U:U \
- RRA:AVERAGE:0.5:1:288
这里创建一个test.rrd数据文件,相关参数说明如下:
-s 300 300秒存储一次数据
DS:pv:GAUGE:600:U:U
DS:ip:GAUGE:600:U:U 指定两个数据源DS,字段分别为pv和ip
RRA:AVERAGE:0.5:1:288 指定RRA,相当于数据表,存储一天的数据。
3、创建更新脚本
- #!/bin/bash
- becur=`date -d "5 minute ago" +%H%M%S`
- list=`tac /var/log/apache2/access.log | awk -v a="$becur" -F [' ':] '{t=$5$6$7;if (t>=a) {print;} else {exit;} }' | egrep -v "\.(gif|jpg|jpeg|png|css|js)" `
- #获取五分钟内PV
- pv=`echo "$list" | wc -l`
- #获取五分钟内IP
- ip=`echo "$list" | awk '{print $1}' | sort | uniq | wc -l `
- #每五分钟更新数据库
- rrdtool update /var/www/test.rrd N:${pv}:${ip}
- #每五分钟更新图片
- rrdtool graph /var/www/1h-pv.png \
- -t "PV and IP statistics in an hour" \
- --start now-3600 \
- --watermark "`date`" \
- --no-gridfit \
- --slope-mode \
- -l 0 \
- -y 1000:5 \
- -X 0 \
- DEF:mypv=/var/www/test.rrd:pv:AVERAGE \
- DEF:myip=/var/www/test.rrd:ip:AVERAGE \
- AREA:mypv#9F35FF:"PV Num" \
- AREA:myip#00DB00:"IP Num"
把此脚本添加进计划任务,每五分钟执行一次。
这是一个包含数据更新和图片生成的脚本,相关参数说明如下:
-t "PV and IP statistics in an hour" 指定图表标题
--start now-3600 获取近一小时数据
-l 0 Y轴从0开始
-y 1000:5 定义y轴分隔线为1000,5条显示一刻度
-X 0 以原值显示y轴
rrdtool相关教程:http://oss.oetiker.ch/rrdtool/
转载自: https://www.centos.bz/2013/03/count-pv-ip-with-rrdtool/
使用rrdtool统计网站PV和IP相关推荐
- Flume+Kafka+Storm+Redis构建大数据实时处理系统:实时统计网站PV、UV+展示
http://blog.51cto.com/xpleaf/2104160?cid=704690 1 大数据处理的常用方法 前面在我的另一篇文章中<大数据采集.清洗.处理:使用MapReduce进 ...
- 用户行为分析大数据系统(实时统计每个分类被点击的次数,实时计算商品销售额,统计网站PV、UV )
Spark Streaming实战对论坛网站动态行为pv,uv,注册人数,跳出率的多维度分析_小强签名设计 的博客-CSDN博客_spark streaming uv 实时统计每天pv,uv的spar ...
- JavaSpark | RDD实战:统计网站 pv 和 uv
文章目录 1.pv 和 uv 1.1 什么是 PV 值? 1.2 什么是 UV 值? 2. 代码实战 JavaSpark | 算子 JavaSpark | RDD实战:WordCount JavaSp ...
- 大数据离线分析系统:统计网站PV、UV
目录 一.业务需求 二.业务实现方案 1.技术栈 2.业务实现流程 3.离线分析系统架构图 三.技术实现 1.Hadoop CDH集群管理平台 2.Flume采集服务器日志数据到HDFS 3.Spar ...
- 网站pv/uv/ip指标解释说明
pv(page view,浏览量) 页面的浏览次数,衡量网站用户访问的网页数量: 用户每打开一个页面就记录1次,多次打开同一页面则浏览量累计. uv(unique visitor,独立访客) 1天内访 ...
- PHP统计网站pv(访问量)
//首先判断有没有统计的文件 if(is_file("pv.txt")){//有 //取文件里面的值 $count=file_get_contents("pv.txt&q ...
- shell脚本统计网站pv,每分钟/小时/天~
脚本内容如下: #!/bin/bash ####获取输入 read -p "请输入日志名称: " log_name ####将日志进行统计,每秒钟的请求数 cat ./$log_n ...
- vue 项目统计网站pv uv
router.afterEach((to, from, next) => {setTimeout(() => {var _hmt = _hmt || [];(function() {var ...
- php+pv统计代码实现,Laravel 10 行代码实现简单的网站 pv uv 统计
最近在优化博客呀,想做一个统计网站 pv uv 的功能,虽然有第三的统计平台再用,但还是想自己写一个啊. 其实统计的数据非常简单,就是网站的访问量丶访客量. public function __con ...
最新文章
- 虚拟化的故事连载系列一
- SAP Fiori应用没能从Fiori Launchpad启动的一个可能原因及分析过程
- arduino智能浇花系统_创新成果 | 养花神器——智能浇花机
- HDU-1253-胜利大逃亡(bfs)
- Could not create local repository at /home/yizhenn/.m、IDEA倒入maven项目无法导报问题
- java实现rabbitmq简单队列模型,生产者 消费者 消息队列
- 图片字符串base64的判断
- 本世纪最经典好文---新系统下经典老游戏[中文HGAME]重玩全攻略(感谢作者)
- linux网络服务配置说课,说课稿 LINUX.ppt
- 前端实时可视化开发工具
- 163邮箱格式 ,个人邮箱的正确格式
- C语言——学习笔记(全)
- ios弧形进度条_iOS圆形进度条
- MySQL的binLog、redoLog、undoLog是什么?
- 使用百度AI将语音转换成文字(JAVA)
- Kong 网关 | Rate Limiting 限流
- 这样的萌妹,谁不爱呢?
- 【小麦苗课堂】高可用培训(RAC+DG+OGG)--包括11g、12c、18c、19c等版本
- 计算机应用方面中文学术论文写作详细总结
- java mock verify_java-缺少对verify(mock)的方法调用,但是有一个?
热门文章
- 暑假实习 + 提前批 +校园招聘(更新中)
- 大数据技术之Flume(一)Flume概述、Flume快速入门
- java 1029: 三角形判定
- python中geometry_python shapely.geometry.polygon任意两个四边形的IOU计算实例
- java 导出excel打开报错_java导出excel文件报“失败-网络错误”
- Android实现截屏
- 计算机专业java餐厅点餐系统,Java实现餐厅点餐系统的实例代码.pdf
- 每日算法智力题(杀狗问题)
- java号码分身_电话号码分身问题
- mysql 数据精确度_mysql数据精度丢失问题深入探讨