天天看点

SpringBoot 集成 JavaMelody实现 性能监控

1、JavaMelody

JavaMelody能够在运行环境监测Java或Java EE应用程序服务器。并以图表的形式显示:Java内存和Java CPU使用情况,用户Session数量,JDBC连接数,和http请求、sql请求、jsp页面与业务接口方法(EJB3、spring、Guice)的执行数量,平均执行时间,错误百分比等。图表可以按天,周,月,年或自定义时间段查看。 

2、Maven依赖

<dependency>			
        <groupId>net.bull.javamelody</groupId>			
        <artifactId>javamelody-core</artifactId>			
        <version>1.73.1</version>		
    </dependency>		
    <dependency>			
        <groupId>com.lowagie</groupId>			
        <artifactId>itext</artifactId>			
        <version>2.1.7</version>		
    </dependency>
           

3、配置JavaMelody

@Configuration
public class MelodyConfig {
    /**
     * 配置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;
    }
}
           

4、启动项目 

访问路径为: http://ip:port/项目名/monitoring

SpringBoot 集成 JavaMelody实现 性能监控

继续阅读