编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

JavaMelody基本使用(java metric)

wxchong 2024-11-08 14:35:28 开源技术 16 ℃ 0 评论

背景

已经在项目中使用Arthas完成了一些监控,Arthas本身也可以集成到项目中,本次简单介绍一个使用更加简单,支撑方面更加广泛的工具JavaMelody。

基本介绍

JavaMelody的目标是监视QA和生产环境中的Java或Java EE应用程序服务器。

它不是一个模拟用户请求的工具,而是一个根据用户对应用程序的使用情况来衡量和计算应用程序实际操作情况的统计数据的工具。JavaMelody主要基于请求统计和演进图表。

它允许改进QA和生产中的应用程序,并有助于:

    • 给出关于平均响应时间和执行次数的事实
    • 在趋势不好的时候,在问题变得太严重之前做出决定
    • 基于更有限的响应时间进行优化
    • 找出响应时间的根本原因
    • 验证优化后的实际改进

Plugins

提供了很多方面的插件支持,要监控Spring-boot、Jenkins、JIRA、Confluence、Bamboo、Bitbucket、Liferay、Alfresco、Sonar服务器或Grails应用,你只需要安装一个专门的插件。

springboot

https://github.com/javamelody/javamelody/wiki/SpringBootStarter

JavaMelody 基本用法

监视的一个重要价值是非常简单和快速的安装过程。通常,应用程序中的集成是由软件提供商完成的,而不需要客户的任何干预。

通过自动发现环境,这种集成可以在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

图表显示

内存直方图

线程

PWD

http://${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>


你看,奇怪的知识又增加了

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表