最近在做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. http代理阅读4 响应缓存处理

    if (c->read->ready) { ngx_http_upstream_process_header(r, u); //读事件触发 准备处理http头部信息 return; } 向 ...

  2. linux之DHCP服务

    1.DHCP介绍(动态主机配置协议)  DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议, 主要用途:给内部网络或网络服务供应 ...

  3. 高性能arm运行ceph存储基准测试

    关于arm 之前wdlab对外发布过一次约500个节点的arm的ceph集群,那个采用的是微集群的结构,使用的是双核的cortex-a9 ARM处理器,运行速度为1.3 GHz,内存为1 GB,直接焊 ...

  4. Bad magic number ImportError in python

    是源码编译里面版本不对,删除掉源码pyc然后重新编译就可以了 find .-name '*.pyc'-delete python -m compileall . 更新历史 why when 创建 20 ...

  5. Ubuntu 12.10设置root用户登录图形界面

    Ubuntu 12.04默认是不允许root登录的,在登录窗口只能看到普通用户和访客登录.以普通身份登陆Ubuntu后我们需要做一些修改,普通用户登录后,修改系统配置文件需要切换到超级用户模式,在终端 ...

  6. MySQL 连接为什么挂死了?

    摘要:本次分享的是一次关于 MySQL 高可用问题的定位过程,其中曲折颇多但问题本身却比较有些代表性,遂将其记录以供参考. 一.背景 近期由测试反馈的问题有点多,其中关于系统可靠性测试提出的问题令人感 ...

  7. Java-Annotation的一种用法(消除代码中冗余的if/else或switch语句)

    Java-Annotation的一种用法(消除代码中冗余的if/else或switch语句) 1.冗余的if/else或switch ​ 有没有朋友写过以下的代码结构,大量的if/esle判断,来选择 ...

  8. CorelDRAW常用工具之橡皮擦工具

    很多作图以及设计软件都会自带橡皮擦工具,但对于专业做平面设计的小伙伴来说,普通的橡皮工具肯定是无法满足日常作图需求的,今天来看看CorelDRAW的橡皮擦能玩出什么花样来. 1.擦除对象 CorelD ...

  9. 在线思维导图Ayoa有哪些比较好用的功能

    思维导图是非常实用的一种工具,现在网上有很多制作思维导图的软件,小编也用过很多款软件,今天就和大家分享一款思维导图逆天软件:Ayoa. 用了这款软件后,小编对思维导图的理解刷新了高度,下面就为大家推荐 ...

  10. Folx专业版任务计划功能详解

    Folx专业版的任务计划功能允许用户以时间表的方式,制定下载计划.按照预先设定的时间计划,Folx会在指定的时间段内,自动开启或停止下载任务. 另外,用户还可以设置自动关机功能.当计划下载任务停止时, ...