1、引入依赖包:
项目pom.xml文件中加入JavaMelody组件。
<!-- javamelody-core -->
<dependency>
<groupId>net.bull.javamelody</groupId>
<artifactId>javamelody-core</artifactId>
<version>1.55.0</version>
</dependency>
2、在web.xml中配置filter:
<!-- javamelody start -->
<filter>
<filter-name>monitoring</filter-name>
<filter-class>net.bull.javamelody.MonitoringFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>monitoring</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>net.bull.javamelody.SessionListener</listener-class>
</listener>
<!-- javamelody end -->
3、以上两步搞定之后,基本就可以收工了。重启项目,输入监控信息访问地址(http://ip:port/projectName/monitoring),就可以查看到效果了。
来几张图,才有真相。
当你能正常看到上面的图表时,恭喜你啊JavaMelody已经部署成功。
4、JavaMelody监控页面提供的信息太多,有些影响还比较大,比如:上面那个无效的http session,可以直接让所有session失效,你点了的话正在登陆使用系统的用户就得重新登录了。
所以要搞个简单的访问控制,不过这个不用自己去写,这货自己提供的有。只需要为MonitoringFilter配置下 "authorized-users" 参数即可:
<filter>
<filter-name>monitoring</filter-name>
<filter-class>net.bull.javamelody.MonitoringFilter</filter-class>
<init-param>
<param-name>authorized-users</param-name>
<param-value>admin:admin,xiangzi:xiangzi</param-value>
</init-param>
</filter>
这样你下次打开监控页面时,就会提示登录了。输入你配置的用户名,密码,监控报表就全部呈现出来了。登录页如下:
5、我的web程序,通过不需要监控SQL,该咋弄哩。不急,还很简单:
这样再重启,就看不到SQL监控的几个相关图表了。
还有一些其它的参数,如:disabled:默认false,配置为true将不再监控。url-exclude-pattern:排除不监控的url。
6、监控报告是以PDF文件的方式导出的。需要引入一些支持的jar:
<!-- itext, option to add PDF export -->
<dependency>
<groupId>com.lowagie</groupId>
<artifactId>itext</artifactId>
<version>2.1.7</version>
<exclusions>
<exclusion>
<artifactId>bcmail-jdk14</artifactId>
<groupId>bouncycastle</groupId>
</exclusion>
<exclusion>
<artifactId>bcprov-jdk14</artifactId>
<groupId>bouncycastle</groupId>
</exclusion>
<exclusion>
<artifactId>bctsp-jdk14</artifactId>
<groupId>bouncycastle</groupId>
</exclusion>
</exclusions>
</dependency>
不引入这些依赖的话,不会显示上面图表中的那个PDF按钮。
7,我要用的基本就这些了,还有跟spring结合,配置切点,监控方法的访问次数之类的,有兴趣的可以自己搞啊。
javamelody-1.55.0.zip加压出来一看,是一个Maven项目,代码量也不大,想深入研究的,就自由搞吧。
下班,关机,走人。