最近在做java性能瓶颈定位分析工具的研究,发现glowroot工具是一款相当不错的APM工具(Wonderful tool),架构简洁,部署简单,上手容易。
经过亲身搭建体验,总结了产品的架构,工具的特点,性能,功能点,并把实操的部署搭建步骤,分享推广给需要的人
 
工具的架构:
 
工具的特点:无代码侵入,agent代理监控,使用方便,简单,快速
针对慢请求和错误请求的跟踪捕获
深入钻取分析(非常方便的过滤)
响应时间分解图
响应时间百分比图
SQL捕获和聚合
服务调用捕获和聚合
MBean属性捕获和图表
可配置告警
多粒度(1m、5m、30m、4小时)的历史数据汇总,具有可配置保留
完全支持跨越多个线程的异步请求
具有移动支持的响应式用户界面
 
工具性能损耗:
开销非常之小,损耗在低微妙级别,小到很难在大多数应用程序上测量出,这些开销可以在这些应用程序运行过程中忽略不计
与市面上顶级的java APM工具做性能损耗对比
 
工具的功能:transactions事件模块,errors错误日志模块,jvm模块,reporting报表模块,synthetic模块,incidents模块,系统配置模块
界面demo展示
 
工具的部署使用:
 
一,先安装cassandra数据库,前提需要安装好jdk环境
Cassandra是一套开源分布式NoSQL数据库系统。它最初由Facebook开发,用于储存收件箱等简单格式数据,集GoogleBigTable的数据模型与Amazon Dynamo的完全分布式的架构于一身Facebook于2008将 Cassandra 开源。Cassandra是一个混合型的非关系的数据库,类似于Google的BigTable。其主要功能比Dynamo (分布式的Key-Value存储系统)更丰富,但支持度却不如文档存储MongoDB(介于关系数据库和非关系数据库之间的开源产品,是非关系数据库当中功能最丰富,最像关系数据库的。支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型)。Cassandra最初由Facebook开发,后转变成了开源项目。它是一个网络社交云计算方面理想的数据库。
 
 
(1)下载Cassandra安装包,tar -zxvf解压到/home/chenxi/soft/cassandra目录。
 
(2)在/home/chenxi/soft/cassandra目录下建立data;commitlog;saved_caches三个目录,Cassandra服务运行时会写入相应数据。
 
(3)chown -R将/home/chenxi/soft/cassandra目录的所有者改为非root用户,因为cassandra 不支持root用户启动,需要切换到其他用户 sudo su - chenxi,才能正常启动cassandra进程。
 
(4)修改cassandra的conf目录中的cassandra.yaml文件,将本机IP作为Seed服务器。
 
(5)./cassandra启动服务,./nodetool status检验服务状态。

二,部署glowroot-central
下载glowroot-central与glowroot(代理)
 
(1)将安装包解压到/home/chenxi/soft/glowroot-central目录,更改目录所有者权限。
 
(2)修改glowroot-central.properties配置文件,cassandra.contactPoints参数更改成cassandra服务器地址,其余参数可以保持默认。
 
(3)启动服务:java -jar glowroot-central.jar
 
三,部署glowroot代理
(1)把glowroot-0.13.6-dist安装包解压到/home/chenxi/soft/glowroot-agent/目录,更改目录所有者权限。
 
(2)在被监控应用服务的jvm配置处加上如下参数。
注:agent.id要保持唯一,否则同一服务多个节点可能不能识别。
 
(3)在/home/chenxi/soft/glowroot-agent/glowroot代理目录下创建并编辑glowroot.properties文件,添加如下参数:
agent.rollup.id=test-tomcat
collector.address= http://控制器地址:8181
注:agent.rollup.id可用于跨多个代理(如跨集群)。
 
(4)在/home/chenxi/soft/glowroot-agent/glowroot代理目录下创建admin.json文件,修改绑定地址 "bindAddress": "代理服务地址"
 
(5)检查关闭服务器防火墙service iptables status
 
(6)用浏览器运行监控: http://localhost:4000
 
 
官网参考地址:https://glowroot.org/

开源性能监控分析工具glowroot的更多相关文章

  1. Zynga 开源其服务器性能监控分析工具 zPerfmon

    流年不利的社交游戏服务商Zynga近日在官方博客宣布开源zPerfmon——该工具负责监控Zynga数以千计的社交游戏服务器.zPerfmon的源代码目前已经上传至Github. 包括Facebook ...

  2. MiniProfiler性能监控分析工具在.NET项目中的使用

    MiniProfiler是一款针对.NET, Ruby, Go and Node.js的性能分析的轻量级程序.可以对一个页面本身,及该页面通过直接引用.Ajax.Iframe形式访问的其它页面进行监控 ...

  3. UAVStack JVM监控分析工具:图形化展示采集及分析监控数据

    摘要:UAVStack推出的JVM监控分析工具提供基于页面的展现方式,以图形化的方式展示采集到的监控数据:同时提供JVM基本参数获取.内存dump.线程分析.内存分配采样和热点方法分析等功能. 引言 ...

  4. Linux性能监控分析命令(四)—top命令介绍

    性能监控分析的命令包括如下: 1.vmstat 2.sar 3.iostat 4.top 5.free 6.uptime 7.netstat 8.ps 9.strace 10.lsof ======= ...

  5. 10 个强大的开源 Web 流量分析工具(转帖)

    Web 流量分析工具多不胜数,从 WebTrends 这样专业而昂贵的,到 Google Analytics 这样强大而免费的,从需要在服务器端单独部署的,到可以从前端集成的,不一而足.本文收集并介绍 ...

  6. Web服务器性能监控分析与优化

    Web服务器性能监控分析与优化 http://www.docin.com/p-759040698.html

  7. Linux性能监控分析命令(五)—free命令介绍

    性能监控分析的命令包括如下:1.vmstat2.sar3.iostat4.top5.free6.uptime7.netstat8.ps9.strace10.lsof 命令介绍:free命令是监控Lin ...

  8. Linux性能监控分析命令(三)—iostat命令介绍

    性能监控分析的命令包括如下: 1.vmstat 2.sar 3.iostat 4.top 5.free 6.uptime 7.netstat 8.ps 9.strace 10.lsof 命令介绍: i ...

  9. Linux性能监控分析命令(二)—sar命令介绍

    性能监控分析的命令包括如下: 1.vmstat 2.sar 3.iostat 4.top 5.free 6.uptime 7.netstat 8.ps 9.strace 10.lsof ======= ...

随机推荐

  1. TTL门和MOS门悬空输入的处理

    引言 本来是数字电路学习时很重要的考点,但是总容易忘掉,所以记录一下~ 内容 TTL TTL电路中的TTL是Transistor-Transistor-Logic的英文缩写,指的是晶体管逻辑电路,即T ...

  2. python3中我所了解的print()的用法

    1.最基础的用法:打印调试信息等字符串语句.而且在3里面,打印中文的时候不需要加u了. 2.打印变量 打印默认换行的: 打印出来不想要他换行的:参数end='',这样打印出来就可以不换行了,这种骚操作 ...

  3. 记最近一次ceph故障修复

    前言 所谓吃一堑长一智,每次面对问题才是最好的学习机会,在面对问题的时候,尽量是能够自己去解决,或者去尝试能够最接近答案,确实无法解决再去寻求他人帮助,这样成长的会更快一些,在学校读书做题的时候,老师 ...

  4. Spring第四天,BeanPostProcessor源码分析,彻底搞懂IOC注入及注解优先级问题!

  5. 【进阶之路】Redis基础知识两篇就满足(二)

    导言 大家好,我是南橘,一名练习时常两年半的java练习生,这是我在博客园的第二篇文章,当然,都是要从别处搬运过来的,不过以后新的文章也会在博客园同步发布,希望大家能多多支持^_^ 这篇文章的出现,首 ...

  6. CVE-2020-1938复现

    一.漏洞描述        Tomcat是Apache开源组织开发的用于处理HTTP服务的项目,两者都是免费的,都可以做为独立的Web服务器运行.Apache Tomcat服务器存在文件包含漏洞,攻击 ...

  7. jq判断input 复选框有没有选

    选中了返回true ,没选中返回false$("input[type='checkbox']").is(':checked'):

  8. 利用perspective 和 transform 里面的几个参数来实现旋转照片墙

    旋转照片墙 首先,来看下,是什么效果吧,上效果图 ↓ 其实这个东西,很容易制作,先说下思路, 把照片都给叠在一起,然后 rotateY 旋转,给每张图片 旋转不一样的角度能构成一圈, 然后transl ...

  9. css3系列之伪元素选择器

    Pseudo-Element Selectors(伪元素选择器) E::placeholder E::selection E::placeholder 这个选择器是选啥的呢, 是选 input 里面的 ...

  10. selenium截图功能

    selenium自动化测试完后需要查看值观的结果,或者查操作过程中是否正确,此时需要使用自带的截图功能. 示例1: from time import sleep from selenium impor ...