背景已经在项目中使用Arthas完成了一些监控,Arthas本身也可以集成到项目中,本次简单介绍一个使用更加简单,支撑方面更加广泛的工具JavaMelody。基本介绍JavaMelody的目标是监视QA和生产环境中的Java或Java EE应用程序服务器。它不是一个模拟用户请求的工具,而是一个根据用户对应用程序的使用情况来衡量和计算应用程序实际操作情况的统计数据的工具。JavaMelody主要基于请求统计和演进图表。它允许改进QA和生产中的应用程序,并有助于:给出关于平均响应时间和执行次数的事实在趋势不好的时候,在问题变得太严重之前做出决定基于更有限的响应时间进行优化找出响应时间的根本原因验证优化后的实际改进Plugins提供了很多方面的插件支持,要监控Spring-boot、Jenkins、JIRA、Confluence、Bamboo、Bitbucket、Liferay、Alfresco、Sonar服务器或Grails应用,你只需要安装一个专门的插件。springboothttps://github.com/javamelody/javamelody/wiki/SpringBootStarterJavaMelody 基本用法监视的一个重要价值是非常简单和快速的安装过程。通常,应用程序中的集成是由软件提供商完成的,而不需要客户的任何干预。通过自动发现环境,这种集成可以在10分钟内完成:它只需要复制2个jar文件,并在xml文件中添加10行。之后可以根据需要通过配置完成此集成。但是,如果您使用ear文件部署应用程序,可能是因为您使用ejb,请遵循Advanced用户指南。请注意javamelody。这里的安装不使用War文件。和javamelody。War文件在大多数用例中是不需要的。Jar文件将javamelody.jar和jrobin-1.5.9.jar文件拷贝到要监控的项目的WEB-INF/lib目录。或者,如果您使用Maven,请将javamelody-core依赖项添加到您的webapp的pom.xml文件中。如果你的应用服务器兼容Servlet API 3.0(如tomcat 7, glassfish v3或jboss 6),这段通常是不需要的,你可以跳过它,然后像下一段那样启动服务器,除非你使用的web.xml文件没有版本="3.0"。否则,在webapp war的WEB-INF/web.xml文件中,在servlet的描述之前添加以下行:
<filter><filter-name>javamelody</filter-name><filter-class>net.bull.javamelody.MonitoringFilter</filter-class><async-supported>true</async-supported></filter><filter-mapping><filter-name>javamelody</filter-name><url-pattern>/</url-pattern><dispatcher>REQUEST</dispatcher><dispatcher>ASYNC</dispatcher></filter-mapping><listener><listener-class>net.bull.javamelody.SessionListener</listener-class></listener>
Servlet API 3.0.<async-supported>true</async-supported> and <dispatcher>ASYNC</dispatcher>一般来说完成上述配置后即可对项目进行监控了http://${youhost}/monitoring图表显示内存直方图线程PWDhttp://${yourhost}/monitoring?part=hashPassword
<filter><filter-name>javamelody</filter-name><filter-class>net.bull.javamelody.MonitoringFilter</filter-class><init-param><param-name>authorized-users</param-name><param-value>admin:{SHA-256}a198db9cb2d249be7351acd68d64c05d938b58050647a20255a50c22b129ac3a</param-value></init-param></filter><filter-mapping><filter-name>javamelody</filter-name><url-pattern>/</url-pattern><dispatcher>REQUEST</dispatcher><dispatcher>ASYNC</dispatcher></filter-mapping><listener><listener-class>net.bull.javamelody.SessionListener</listener-class></listener>
你看,奇怪的知识又增加了
0 评论