APM应用性能管理监控使用体验--appdynamics

平时做开发、测试,遇到bug无疑是让人头痛的事情,哼哧哼哧调试好半天才搞定,浪费了本该逍遥快活的大好时间。

今天推荐一个Gartner魔力象限的APM应用性能监控产品AppDynamics,一个应用可以一直免费使用。

本文主要包含以下4部分内容

  • 注册AppDynamics Saas账号
  • 安装监控代理Agent
  • 监控效果简介
  • 使用AppDynamics进行故障排查

注册AppDynamics Saas账号


AppDynamics官网地址: https://www.appdynamics.com/

在官网首页右上角,有一个大大的紫色按钮“START FREE TRIAL”,点它开始注册账号。(如果已经注册并登陆了,点它便是打开账号管理界面)

注册界面如下,注意选择注册类型为Saas,“CREATE A FREE ACCOUNT”注册账号
APM应用性能管理监控使用体验--appdynamics_第1张图片

注册成功后登陆账号,在首页点击紫色按钮“START FREE TRIAL”进入管理控制界面
APM应用性能管理监控使用体验--appdynamics_第2张图片
在管理控制界面选择SAAS菜单,等待一会儿初始化完后,可以看到有一个14天的试用期限,在14天内java、.net、PHP、Node.js、Python以及浏览器,手机APP监控等都各有5个试用许可。试用时间14天完了过后每种类型就只能使用一个了,而且历史数据只能看到一天的。不过对于开发测试来说,一天的数据完全够了,而且还可以一直免费使用国际一流产品;
APM应用性能管理监控使用体验--appdynamics_第3张图片
“Show Controller Login Info”可以查看AppDynamics主界面Controller的连接信息,后面可以直接使用下面的URL打开Controller控制台
APM应用性能管理监控使用体验--appdynamics_第4张图片

点击“Launch AppDynamics”打开Controller控制台,进入监控平台主界面


安装监控代理Agent


从菜单Home→Getting Started→Getting Started Wizard进入配置向导
APM应用性能管理监控使用体验--appdynamics_第5张图片
本次以JAVA应用为例
APM应用性能管理监控使用体验--appdynamics_第6张图片
在配置向导中注意第2步,选择使用的JDK类型,IBM或非IBM的JDK。然后下载Agent代理
APM应用性能管理监控使用体验--appdynamics_第7张图片
解压代理程序包(我目前下载的Agent版本是4.4.3.22593,不同时间注册的版本号可能会不同)
编辑AppServerAgent-4.4.3.22593\ver4.4.3.22593\conf目录下的controller-info.xml文件
添加应用名、模块名(当多个节点组成集群时,模块名起成一样的)、节点名
APM应用性能管理监控使用体验--appdynamics_第8张图片
在应用容器中引入AppDynamics代理
以Tomcat为例
修改Tomcat bin目录下的cataline.bat文件,在第一行加入以下内容,以引入javaagent.jar参数
set CATALINA_OPTS=%CATALINA_OPTS% -javaagent:"F:\software\Appdynamics\AppServerAgent-4.4.3.22593\ver4.4.3.22593\javaagent.jar"

APM应用性能管理监控使用体验--appdynamics_第9张图片

保存,重启Tomcat应用。
注意,这种修改方法适用于通过startup.bat脚本方式启动Tomcat的情况。

重启完成后打开Controller控制台,在Applications中看到应用信息,则表示代理配置成功。
APM应用性能管理监控使用体验--appdynamics_第10张图片

监控效果简介

应用仪表板
APM应用性能管理监控使用体验--appdynamics_第11张图片
事务TOP排名
APM应用性能管理监控使用体验--appdynamics_第12张图片
事务评分
应用整体访问量,以及慢事务、错误事务所占比例以不同颜色显示

APM应用性能管理监控使用体验--appdynamics_第13张图片
所有事务
APM应用性能管理监控使用体验--appdynamics_第14张图片

使用AppDynamics进行故障排查

慢事务追踪

从Troubleshoot中去查看所有慢事务,选择一条双击进行故障追踪
APM应用性能管理监控使用体验--appdynamics_第15张图片
可以看到该操作有访问数据库,数据库访问消耗456ms占总时长的22.6%,77.4%的时间消耗在应用内部,点击Drill Down继续追踪
APM应用性能管理监控使用体验--appdynamics_第16张图片
此处可以看到该请求在后台执行时的堆栈调用过程,查询了13次数据库
APM应用性能管理监控使用体验--appdynamics_第17张图片
查看慢方法排行,可以看出是newLinkedHashSet这个方法耗时占比较高
APM应用性能管理监控使用体验--appdynamics_第18张图片
看到这里,我已知道这个请求慢的原因,因为这是一个数据报表查询操作,在后台处理时,由于结果不能通过一个SQL语句查询出来,所以分了多次操作,每查询一次都要做一次结果处理,然后再以这个处理结果做为条件去数据库查询数据……


错误事务排查

我在测试程序时发现有表格数据总是删除不了,到这里看找到了删除失败的那个操作,双击追踪
APM应用性能管理监控使用体验--appdynamics_第19张图片
继续Drill Down
APM应用性能管理监控使用体验--appdynamics_第20张图片
看错误日志是删除的表格数据有外键关联,未做级联删除造成的
APM应用性能管理监控使用体验--appdynamics_第21张图片

AppDynamics的使用体验暂时只写这么多。

AppDynamics Saas平台目前只能注册国外的服务器,国内目前还没有,由于其已被Cisco收购,今年国内的Saas平台也有望上线。

国内可以访问 http://www.appdynamics.cn打400寻求支持。


你可能感兴趣的:(AppDynamics)