Jwebap是一个用于java web application 的profiler工具。 它不采用JVMPI提供的特性实现监控,是一个纯粹的JAVA应用,不依赖于OS,JVM,JDK1.4以上用户都可以使用。
它的目的是希望能够安全高效的部署于生产以及测试应用系统,及时地发现应用系统中存在的性能瓶颈,以及为一些动态性很高难于调试和维护的应用系统提供帮助。目前它主要致力于性能分析和优化方面,以后可能往其他监控方面发展(比如业务数据的监控)。
Jwebap 提供http监控分析,时间阀值设置,平均时间,最长最小时间等等统计;jdbc执行监控,连接泄漏,sql监控分析,帮助找出执行sql的代码行数;程序执行方法监控,时间阀值过滤,方法调用jdbc监听,方法调用栈等等。
2 部署
1 把Jwebap_*.*.*_*.jar放到应用的ClassPath下。
2) 把依赖的jar包也放到应用的ClassPath下明。
3) 把jwebap.xml放到工程web module任意目录
4) 修改web.xml,增加全局参数jwebap-config,指向jwebap.xml的位置
<context-param>
<param-name>jwebap-config</param-name> <param-value>/WEB-INF/jwebap.xml</param-value>
</context-param>
5) 配置Jwebap启动类
注意:配置在所有listener之前,以保证Jwebap最先启动,这点对于类增强很重要。
<listener> <listener-class>org.jwebap.startup.JwebapListener</listener-class>
</listener>
6) 配置HttpComponent的过滤器
<filter>
<filter-name>PageDetectFilter</filter-name> <filter-class>org.jwebap.plugin.tracer.http.DetectFilter</filter-class> <init-param>
<param-name>excludeUrls</param-name> <param-value>/detect;/detect/*;*.js;*.jpg;*.htm;*.html;*.gif;*.png;*.css;*.sw</init-param> </filter> <filter-mapping> <filter-name>PageDetectFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
7) 配置Jwebap Console视图Servlet。
<servlet>
<servlet-name>detect</servlet-name> <servlet-class>org.jwebap.ui.controler.JwebapServlet</servlet-class> </servlet>
<servlet-mapping>
<servlet-name>detect</servlet-name>
<url-pattern>/detect/*</url-pattern>
</servlet-mapping>