使用 JProfiler 监控生产环境中的应用程序

Monitoring Application on Production with JProfiler

目前,我们在生产中遇到了应用程序抛出 OutOfMemoryError 的一些问题,为了确定当前的原因,我们已经订购了 JProfiler 并计划购买许可证,这里的问题是,是吗?需要根据 JProfiler 架构在产品服务器中使用 JProfiler 代理吗?它会损害产品中应用程序的性能吗?这个代理是强制性的吗?感谢您的宝贵时间。

一般来说,您必须通过远程集成向导(会话->集成向导->新建远程集成)传递 -agentlib VM 参数来添加分析代理,以便分析 JVM .

性能影响取决于分析设置。如果不启动分配记录,使用采样作为方法调用记录类型,开销一般不会超过百分之几。

但是,如果您只需要调查 OutOfMemoryError,您可以传递 VM 参数

-XX:+HeapDumpOnOutOfMemoryError  

并在 JProfiler GUI 中打开 HPROF snapshot