自己开发可视化web监控服务器和SQL SERVER

1.cmd脚本捕获服务器以及SQL SERVER各个参数数据

我们知道windows有个工具叫做性能计数器(perfmon),他提供服务器和安装程序的实时图表展示和分析。但是该图形化工具的弊端很明显:

①展示时间段很短,间隔1s,最大值1000s,也就是17分钟不到,展示的时间跨度很有限。

②如果根据保存的日志展示,一个参数/每小时大约需要上G磁盘空间,这将会非常占用空间,不适合长期保存。此处有兴趣的朋友可以测试下保存日志的大小。

那么我们摒弃windows系统的perfmon图形化,基于仅仅是数据的捕获是否有办法呢?答案是肯定的。windows有相关的批处理指令(typeperf)。我们来测试一下,如下:

这样我们就轻松捕获了cpu的 Processor Time,typeperf 批处理指令相关参数大家可以去了解下,可以通过模板捕获并保存到文件,也可以通过SQL SERVER调用xp_cmdshell组件,如下:
 ①通过参数模板保存到文本文件

 

不难发现,这些文本文件都是规则的,我们可以通过SQL SERVER的bulk insert工具全部导入到SQL SERVER数据库中。当然最重要的是相同的性能参数相同的时间跨度上磁盘空间的优势,举例10个参数该文本一天86400条数据量大约10M+,是微软图形化日志的几千分之一,这个磁盘空间的节省是很可观的。
②通过 SQL SERVER调用xp_cmdshell查询数据

 

同样很轻松,这些数据经过简单字符串处理后插入数据库,相同参数相同时间跨度和文本文件大小差不多,都很节省空间。
 
 
 
2.各种数据的结构化
这部分其实也很有规律,不难处理,无论是文本文件还是SQL SERVER调用CMD格式都是结构化的或者是半结构化的,通过文本编辑器或者c#程序处理,都可以完成结构化并插入数据库,如下图:

 

 
 
3.图形化展示部分
可以了解下前端的一些知识,jquery和一些图表框架,我这里是用的highcharts,现在百度的echarts也不错,并将这些数据可视化

 

 
4.数据智能化
做到这里的话,可以做的工作就很多了,实时图表,告警机制,统计报表。就在以后整理了和大家慢慢分享。
 
 
 
欢迎各位DBA达人的指点和互相交流。

转载于:https://www.cnblogs.com/AlexGQ/p/6491327.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值