注:该文是本博主记录学习之用,没有太多详细的讲解,敬请谅解!
一、介绍
JavaMelody的目标是监控QA和生产环境中的Java或Java EE应用程序。它不是模拟用户请求的工具,它是一种工具,用于根据用户对应用程序的使用情况来测量和计算应用程序实际操作的统计信息。
二、相关连接
github官网文档地址:https://github.com/javamelody/javamelody/wiki/UserGuide
github下载地址:https://github.com/javamelody/javamelody/releases
三、maven配置
1、一种是spirngboot跟javamelody持续集成的
<dependency>
<groupId>net.bull.javamelody</groupId>
<artifactId>javamelody-spring-boot-starter</artifactId>
<version>1.76.0</version>
</dependency>
使用持续集成配置得话需要到application.properties文件中配置相关的属性:
#启动javamelody
javamelody.enabled=true
#启动监控
javamelody.spring-monitoring-enabled=true
#显示日志
javamelody.init-parameters.log=true
注:这里只是列举了启动服务的基础配置,更多的配置属性可以到官网文档上查看。
2、一种是javamelody原生的
<dependency>
<groupId>net.bull.javamelody</groupId>
<artifactId> javamelody-core</artifactId>
<version>1.76.0</version>
</dependency>
使用原生依赖包的话,则需要添加过滤拦截器
@Configuration
public class JavaMelodyConfig {
/**
* 配置javamelody监控
* spring boot 会按照order值的大小,从小到大的顺序来依次过滤
*/
@Bean
@Order(Integer.MAX_VALUE-1)
public FilterRegistrationBean<MonitoringFilter> monitoringFilter() {
FilterRegistrationBean<MonitoringFilter> registration = new FilterRegistrationBean<MonitoringFilter>();
registration.setFilter(new MonitoringFilter());
registration.addUrlPatterns("/*");
registration.setName("monitoring");
return registration;
}
/**
* 配置javamelody监听器sessionListener
*/
@Bean
public ServletListenerRegistrationBean<SessionListener> servletListenerRegistrationBean() {
ServletListenerRegistrationBean<SessionListener> slrBean = new ServletListenerRegistrationBean<SessionListener>();
slrBean.setListener(new SessionListener());
return slrBean;
}
启动服务后访问http://localhost:8080/monitoring,相关界面: