两种方法取一种即可,如果有一种访问不了,试用另外一个。如果有同学还有其他的Java服务监控的方法,可以留言给推荐推荐。
第一种方法:
1.需要在application启动类里面添加监听的配置
/**
* 配置javamelody监控 spring boot 会按照order值的大小,从小到大的顺序来依次过滤
*/
@Bean
@Order(Integer.MAX_VALUE - 1)
public FilterRegistrationBean monitoringFilter() {
FilterRegistrationBean registration = new FilterRegistrationBean();
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;
}
2.在pom中添加依赖
<dependency>
<groupId>net.bull.javamelody</groupId>
<artifactId>javamelody-core</artifactId>
<version>1.79.0</version>
</dependency>
3.需要对访问的域名添加/monitoring?
访问域名+/monitoring?即可查看到监控的相关信息,监控内容包括:被占用的内存,CPU占用率,活动的线程,活跃的jdbc连接数等图标;以及图标系统错误日志,最后发生错误请求的接口等信息,方便我们查找错误问题。
第二种方法:
1.直接在POM文件种添加如下的两个依赖,然后和第一种方法的第三步一样,修改一下访问域名就可以了,就不需要再启动类添加东西了。
<!--JavaMelody-->
<dependency>
<groupId>net.bull.javamelody</groupId>
<artifactId>javamelody-spring-boot-starter</artifactId>
<version>1.77.0</version>
</dependency>
<!--JavaMelody监控PDF格式文件导出-->
<dependency>
<groupId>com.lowagie</groupId>
<artifactId>itext</artifactId>
<version>2.1.7</version>
</dependency>