全方位的开源监控工具链介绍-阿里云开发者社区

开发者社区> smooth00> 正文

全方位的开源监控工具链介绍

简介: 说到监控现在最火的是全链路监控(服务调用+HTTP调用+数据源访问+MQ链路的监控),但我认为这是狭义的全链路监控,广义的概念应该不仅仅指APM(Appliation Perfance  Manager & Monitor),还包括Loggong(系统日志、业务日志、框架日志)、Mertic(指标或者度量)、Trancing(追踪:覆盖微服务,存储,中间件)。
+关注继续查看

      说到监控现在最火的是全链路监控(服务调用+HTTP调用+数据源访问+MQ链路的监控),但我认为这是狭义的全链路监控,广义的概念应该不仅仅指APM(Appliation Perfance  Manager & Monitor),还包括Loggong(系统日志、业务日志、框架日志)、Mertic(指标或者度量)、Trancing(追踪:覆盖微服务,存储,中间件)。而我今天要介绍的是全方位的开源监控工具链,为什么是全方位,就是比广义的全链路监控还要多,包括前端监控(用户行为监控)、压测监控、DevOps监控等等。

一、前端监控
      开源的前端监控产品很少,我今天推荐的是zanePerfor,我们一直在用,确实挺好用的(在这里给开发者打打广告,使用的人多了开源项目才能成长),具有如下功能:

1、浏览器端(WEB)

页面级的性能上报(多页面 || 单页面应用程序通用)
页面AJAX性能上报
页面所有加载资源性能上报(图片,js,css)
页面所有错误信息上报(js,css,ajax)
2、微信小程序端

path路径对应的AJAX性能上报
小程序错误信息上报(js,ajax,img)
用户设备信息及其网络信息上报
3、后端界面展示功能(web,小程序通用)

统计每分钟应用的PV,UV,IP信息,统计每天的PV,UV,IP,跳出率,用户访问平均深度
统计实时和每天的应用top最高访问排行,跳出率最高排行
统计实时和每天的全国省份流量热力图
统计每个用户每次访问的行为轨迹
二、 APM监控
   我要推荐的是SkyWalking(国人开发的,得支持),这是一款开源的应用性能监控系统,包括指标监控,分布式追踪,分布式系统性能诊断。专为微服务、云本机架构和基于容器(Docker、K8s、Mesos)架构而设计。
三、JMX监控
      一般我们运行Java项目都会涉及到JMX的监控,本身JDK自带有的工具jconsole.exe就能完成,很多开源监控平台如Zabbix、open-falcon都有相关的监控插件,除此之外还有一些很流行的JMX监控组件如Jolokia、Jmxtrans,这些组件与其他工具组合就能构建出Java监控平台,我这里推荐的是Jmxtrans + Influxdb + Grafana组合,因为我自己用的比较多,相对比较顺手。
四、服务器监控
      关于服务器监控,主要指的是OS(操作系统)、Docker等环境监控,主要应用于运维监控方面(包括CPU、内存、进程、磁盘、网络的监控),这方面的开源平台也挺多,比如Zabbix、open-falcon。但这里我还是推荐用轻量级的数据采集组件Telegraf,可以组合搭配的方式为 Telegraf + Influxdb + Grafana,由于Telegraf有Linux、Windows、Docker的运行模式,所以可以广泛的采集多种服务器中的指标数据。
五、数据库监控
      开源的数据库监控工具或平台其实也不多,因为数据库产品太多太复杂了,涉及到不同的数据库(包括Nosql)用不同的采集组件就已经让人崩溃了。不过幸运的是上面的Telegraf组件就很强大,它可以监控除Oracle以外的大部分常用数据库,如Mysql、SQL Server、Postgresql、Mongodb、Redis、CouchDB等。
六、CI/CD监控
      现在最流行的话题是DevOps,这个方面的话题太高大上,涉及到监控也是很难定义,但是对于CI/CD过程涉及的Jenkins我们是可以监控的,比如采用 Jenkins_InfluxDB_Plugin + Influxdb + Grafana 组合方式来采集Jenkins的构建数据
七、测试监控
   到这里我们已经了解到 Influxdb + Grafana 组合的强大了,其实和Jmeter结合,我们就可以监视性能测试的压测请求,比起Jmeter本身所生成的html报告,这种方式实时性更好,轻量级的不占用过高资源,可以满足长时间的压测监控。
八、日志监控
    如今最流行的日志监控分析框架是ELK(Elasticsearch + Logstash + Kibana),或者是搭配轻量级的日志采集分析框架Elasticsearch + Filebeat + Kibana。说下kibana作为日志展现方面的问题,Kibana往往在展现一条数据的时候效果是完美的,尤其是kibana4那种清淡的绿色让人心旷神怡。 但很多时候我们要做多维度数据图表展现,这地方Kibana貌似没有做图表样式的优化。当很多条数据拥挤在一起时,很难区分出每个点的数值,换句话说很不直观。另外Kibana更加适合日志类型的展现, 虽然他也可以kv结构,但配置起来有些麻烦。所以现在还有一种搭配方式是 Elasticsearch + Logstash + Grafana 或 Elasticsearch  + Filebeat + Logstash + Granfa,比起来Grafana比Kibana部署还要轻量化。
————————————————
以上为博客部分内容,由于云栖社区不方便复制和转载图片,具体内容看我CSDN博客「smooth-z」:
博客链接:https://blog.csdn.net/smooth00/article/details/102623877

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【译】Delta Lake 0.5.0介绍
本文主要对Delta Lake最新发布的0.5.0版本进行了介绍,介绍了如何使用Presto读取Delta表以及Delta Lake 0.5.0在并发性上的提升。
477 0
Kubernetes监控之Heapster介绍
什么是Heapster? Heapster是容器集群监控和性能分析工具,天然的支持Kubernetes和CoreOS。 Kubernetes有个出名的监控agent---cAdvisor。在每个kubernetes Node上都会运行cAdvisor,它会收集本机以及容器的监控数据(cpu,memory,filesystem,network,uptime)。
1103 0
Web Service依赖的jar包介绍
This directory includes the CXF jar, the CXF manifest jar, the required dependencies, and many optional dependencies. The "modules" directory contains the cxf.jar split up into smaller pieces if
1581 0
服务调用监控工具
     公司最近要做一个服务监控的工具,包括 调用次数、成功率、响应时长、失败明细等信息,正好还在用阿里的edas,想着通过api的方式全都搞定了,可是公司用的专有云,没有监控的api,只能从头来做了。
1221 0
+关注
smooth00
从事过软件开发、软件测试、技术管理工作;目前专职于性能测试,擅长Jmeter、Loadrunner、Selenium、Jenkins等工具的应用和Docker及自动化构建,在性能测试、性能监控、性能分析方面有较多的实战经验。https://smooth.blog.csdn.net
77
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载