监控宝是什么
云智慧监控宝是为用户提供IT性能监控(IT Performance Monitoring)的SaaS产品,包含网站监控、基础设施监控(硬件及网络)、应用服务性能监控、平台API健康检查及监控、业务平台性能测试及诊断等。通过性能指标的采集、分析和统计,持续改进运营效率,为用户提供更加便捷、更优成本、更高质量的应用系统监测与前瞻性数据分析的一站式智慧型云服务。
监控宝官网地址:监控宝-网站监控_服务器监控_API监控_全栈运维解决方案 (jiankongbao.com)
- 使用监控宝的企业
小米、陌陌、高德、用友、金山、途牛、聚美优品、陆金所、尚德、中国平安、建行信用卡中心、春雨医生、畅游、国家电网、中国电信、滴滴打车、春秋航空、凤凰网等各行业领先企业都在使用监控宝的服务,中国互联网百强企业超过30%在使用监控宝。
监控宝的使用案例一
监控宝通过对云主机WordPress生成的URL创建HTTP监控,频率设置为每隔2分钟监控一次,可以得到页面URL的可用率和响应时间;创建PING监控可以得到访问页面的丢包率。这两类监控均涵盖云智慧监控宝部署在全球的所有分布式监测点。

上图为72小时内,通过监控宝获取的被监控URL的平均可用率数据,是100多个监控点访问URL返回数据的均值,能看到不同地区不同运营商访问URL的差异性。

各家云主机的平均网络超时从110ms到接近2000ms,是所有监控宝监控点网络延时返回值的平均值,存在较大差异,主要是受不同地区、不同运营商互联互通的影响,整体来说阿里、腾讯、华为和青云的网络响应时间较好。

在丢包率测试中,阿里、腾讯和首度在线的丢包率维持在5%以下,网络质量较高,青云、华为和美团则基本保持在10%以下。另外白天网络繁忙丢包率较高,夜晚空闲时段丢包率低。
发现:
在网络状况测试环节,阿里、腾讯、华为等大品牌云服务商的网络质量较好,适合对网络性能要求较高的企业。
- 主机性能测试
利用Jmeter实现对所有云服务器的高负载压力测试,设置并发线程数为500, ramp-up period即间隔时间设置为0秒,循环发送。通过云智慧监控宝的服务器性能监控以及APACHE和MySQL应用监控得到主机在高负载下的各项性能数据。

- CPU使用率
CPU使用率是指CPU使用时间占CPU总运行时间的比率,其中Linux/Unix操作系统将CPU使用率又分为用户使用率(执行用户进程花费时间所占的比率)、系统使用率(执行内核进程和中断花费时间所占比率)、I/O等待(因为IO等待而使CPU处于空闲状态等花费时间所占比率)和空闲(CPU处于空闲状态的时间所占比率),而CPU总使用率即为以上四项参数之和。
从数据上看,在500并发下,云智慧监控宝检测到首都在线和华为云的CPU用户使用率为50%左右,阿里、腾讯、美团云为60%,青云最高达到70%。各家CPU的系统使用率均在2.4%~3.6%区间,青云同样稍高。

同样是8G内存,各家可使用的物理内存数量基本一致,都在7870M左右。500并发访问情况下,云智慧监控宝得到的各家内存使用率有较大差别,腾讯、首都在线仅为10%左右,华为、青云占30%,美团42%,阿里云达到56.9%。
在网络流量测试过程中,云智慧监控宝只进行了高并发压力下的网络监控,因此上述数据均为该场景下各家网络流入、流出的实际数据,不代表其最大网络能力。除了腾讯云稍低,各家的网络流出平均流量均达到2Mbps,与标称服务吻合。
作为典型网络应用环境,IaaS平台运行的Apache和MySQL的应用性能同样让人关注。云智慧监控宝给出了压力下Apache和MySQL的性能指标。其中Apache主要包括吞吐率和并发连接数数据:吞吐率是Apache每秒处理的请求数,单位是“reqs/s”,这是Apache当前性能的重要指标;并发连接数,表示Apache当前同时处理的请求数,它由httpd.conf中的MaxClients来确定最大值。
从数据上看,Apache吞吐率中除了阿里云的最大吞吐率较高,达到177reqs/s,其他各家性能比较一致,都在50~70reqs/s之间。并发连接数测试各家的数据存在较大差异,可能受网络或机房防火墙的影响,美团云并发连接数最高达到256,阿里云为192,而腾讯和首都在线的最大连接数为19和28。
云智慧监控宝获取MySQL应用性能数据整体比较一致,除了美团云以外,各家查询吞吐率在550TPS左右,流入速率约为60KB/S,流出速率为500~600KB/S之间。而美团云的查询吞吐率高达846TPS,流入速率和流出速率较其他各家均有差距,说明高并发对美团云的MySQL访问影响较大。
监控宝的使用案例二:自定义监控
监控宝一个客户的案例让大家认识一下自定义监控。

前一段时间,某著名商业企业上线了他们的Tmall系统,云智慧监控宝为其提供了从服务器、应用服务和API接口的监控服务,除此之外,该企业还期望通过交易日志分析了解订单的状态和性能统计,这部分功能并非监控宝产品自带功能,为此云智慧基于监控宝自定义监控功能进行了定制开发,来实现Tmall系统日志分析和监控功能。
监控部署方面比较麻烦,因为Tmall系统是第三方的,非常不愿意我们去监控他们,有很多限制条件,比如不允许日志服务器向外网请求,我们的采集服务只能请求日志服务器,但最终都得到了圆满的解决。

下面就看看我们怎么用自定义监控搞定Tmall日志监控的。
首先,用Python写了一个增量日志分析程序,根据Tmall提供的规则把企业所需要的监控指标数据比如订单总数、失败订单数、退款订单数以及退款失败订单数从第三方的日志文件中读取出来,并写入我们自己的日志中。
然后,在内网采集器中增加了一个自定义监控的插件,来请求这个日志分析程序获得监控指标数据。

最后,在监控宝自定义监控中增加了一个监控项目,选择采集器Python本地获取数据,实现了这个需求。在部署上,内网采集器独立部署在一台能够访问公网的服务器上,日志分析程序部署在第三方的日志集中存储服务器上。

由于在项目开始的时候,没有认真研究客户日志样例文件和规则说明,所以走了一些弯路,所幸很快校正过来,把所有规则三方确认后升级了一版并最终搞定。这里提醒各位做项目的,项目管理控制必要的步骤不能省,债早晚都是要还的。。。
这个项目是典型的先苦后甜,虽然前期掉了不少坑,但后来通过监控宝发现了不少Tmall系统的问题,在客户面前证明了产品的价值,细节涉及隐私,略过不提。
通过这个案例给大家讲讲监控宝自定

义监控,这是我们产品中藏着的一把瑞士军刀,但由于这个功能是免费的,所以很多用户反而不太了解。
那么监控宝为什么会提供这个功能呢?

监控宝靠网站监控打开了一片天地,后来增加了服务器和服务监控,并逐渐支持Apache、Nginx等典型Web应用,在这个过程中我们发现,即使提供再多的标准服务也无法覆盖广大用户不同版本、不同类型的应用,还有不少中、高级用户会根据需求自己开发的个性化应用。
对监控来说,简单说就是采集数据、分析结果、给出告警这三个步骤,而客户的各类个性化应用对我们来说最难的一点在于数据采集。监控宝自定义监控的工作原理非常简单,就是将数据采集标准化,我们制定了一个标准格式的数据交换文件。
minEnqueueTime:0.0
expiredCount:0
storePercentUsage:0
dequeueCount:906
memoryUsage:96692
consumerCount:3
memoryPercentUsage:0
averageEnqueueTime:14668.775461866415
maxEnqueueTime:1205901.0
dispatchCount:2090
size:92
producerCount:1
enqueueCount:5567
tempPercentUsage:0

是必须有的,minEnqueueTime、expiredCount等这些都是我们定义的监控指标,冒号之后是对应的指标值,这个文件是通过界面的方式定义。
定义好这个规则之后,剩下的就简单了,让被监控的目标程序或是应用把指标写成这种格式的文件,做成一个可以被http请求到的资源,不断的把指标数据值写进来。之后在自定义监控中创建监控项目,选择这个规则,就可以了。

举例说明:
ActiveMQ 是Apache的开源消息总线,如果用自定义监控如何实现ActiveMQ的监控需求呢?

第一步,整理出ActiveMQ监控的指标要求
第二步,写个程序读取ActiveMQ的指标数据,这里用到了statistics plugin ,在ActiveMQ中配置一下即可。

配置项灰常简单,用java写个进程隔几秒钟取一次指标,代码比较挫,可以无视。
主要是看输出文件位置:”
/Users/jason/workspace/tomcat7065/webapps/root/mqkeyindex.html”
在本机装个tomcat,这个位置就是默认的应用目录,mqkeyindex.html就是我们定义的规则文件。
至此,监控指标读取和输出完毕,这部分工作一般是客户自己完成,或是云智慧的工程师来帮客户以项目方式完成,该企业的日志分析程序就是类似这样的。
再后面就是监控宝自定义监控的工作了。
因为tomcat在本机,外网访问不到,所以需要安装一个采集器,选择好自定义监控插件即可。操作过程略过。
非常新鲜,刚刚创建的。
创建一个自定义监控。
规则是提前建好的,指标多创建起来好麻烦的说。

这个是创建页面,这里面的状态页其实就是我之前
/Users/jason/workspace/tomcat7065/webapps/root/mqkeyindex.html输出的格式。
这个规则是对照着输出结果创建的,而用采集器解决了外网访问不了的问题。
上面提到的那家咖啡企业是采用了“执行内部文件获取数据”的方式,和这个方式不太一样,不过这是最简单和常用的方式。另外,在规则定义中可以定义图和线的,
最后给大家看下效果吧。
自定义监控功能非常强大的,如果数据采集输出环节技术难度不大的话,可以非常快速的搞定一个客户的特殊监控需求,所以很多老用户都最爱自定义监控功能。接下来我们会为您介绍监控宝自定义监控的详细用法,敬请期待。
文章标题:监控宝程序性能监控「监控宝怎么使用-附2个案例」
文章链接:https://www.linkedcc.com/tg/7664
版权声明(详见页尾):本文内容及图片由互联网用户自发投稿贡献,该文观点仅代表作者本人。