JavaMelody
JavaMelody能够监控Java或Java EE应用程序服务器的运行状况,并以图标的方式显示:java内存、CPU使用情况、用户Session数量、JDBC连接数、http请求、sql请求、jsp页面与业务接口方法EJB3、Spring、 Guice)的执行数量,平均执行时间,错误百分比等。图表可以按天,周,月,年或自定义时间段查看。
这对我们查看自己服务哪些接口经常被使用,接口耗时,GC等问题可以直观的显示,最重要的是Leader要你反馈数据的时候,可以随时拿到。
javaMelody.war布署
javaMelody.war相当于一个javaMelody的服务管理系统,我们可以通过输入服务的地址,就可以添加到监控中。
1、javaMelody下载地址:https://github.com/javamelody/javamelody/releases
2、下载Tomat7.0以上
3、将javamelody.war放在Tomcat的webapps下(为了方便访问,可以将javamelody-xxx.war重命名为javamelody.war)
4、在conf/Catalina/localhost/ 目录下新建文件javamelody.xml如下:(发邮件配置)
<?xml version="1.0" encoding="UTF-8" ?> <Context docBase="/opt/hermes/apache-tomcat-7.0.70/war/javamelody.war" path="javamelody" reloadable="false" > <Parameter name='javamelody.resolution-seconds' value='120' override='false'/> <!--send report every day--> <Resource name="mail/MySession" auth="Container" type="javax.mail.Session" mail.smtp.host="10.62.6.12" mail.smtp.port="2027" mail.smtp.user="18013093863@189.cn" mail.from="18013093863@189.cn" mail.smtp.auth="false" mail.smtp.password="test123" /> <Parameter name="javamelody.admin-emails" value="yangkj@corp.21cn.com" override="false" /> <Parameter name="javamelody.mail-session" value="mail/MySession" override="false" /> <Parameter name="javamelody.mail-periods" value="day,week,month" override="false" /> </Context>
5、启动及停止:./startup.sh及./shutdown.sh
6、访问地址:http://xxx:port/javamelody/
javaMeloay客户端配置
1、maven项目添加相关包
<dependency> <groupId>net.bull.javamelody</groupId> <artifactId>javamelody-core</artifactId> <version>1.62.0</version> </dependency>
2、web.xml添加配置
<filter> <filter-name>monitoring</filter-name > <filter-class>net.bull.javamelody.MonitoringFilter</filter-class > <init-param> <param-name>log</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>monitoring</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <listener> <listener-class>net.bull.javamelody.SessionListener</listener-class > </listener>
测试
1、启动需要监控的项目 http://localhost:8080/redisCluster/login.jsp
2、在javamelody管理中添加监控点
3、监控界面
注:由于要就监听JDBC的使用情况需要配置数据库驱动类,这里由于我不需要监控,所以没做配置;有需要的可以自己找找资料(这里是网上一个链接,不过自己没测试过http://www.cnblogs.com/xing901022/p/4121969.html)。
参考资料:https://github.com/javamelody/javamelody/wiki/UserGuide