性能问答>Jvm OOM的时候小困惑>
2回复

Jvm OOM的时候小困惑



OOM的时候可以主动触发 HeapDumpOnOutOfMemoryError

那是否可以主动加上一些业务报警呢?类似 一个勾子 直接触发相关的策略 ,不知道大佬们能给个思路吗?

之前在社区里面看到的是
触发了:hotspot/src/share/vm/utilities/debug.cpp里面的
report_java_out_of_memory

是否我们可以加一些主动性的勾子来处理一些逻辑

2517 阅读
请先登录,再评论

jvm有一个LowMemoryDetector机制可以设置一个内存预值,当达到这个内存预值就会触发回调,但是这种方式有部分内存不支持[图中为false代表不支持此种内存预值触发]
image.png
另外一种方式可以定时从mxbean获取使用内存占比来触发告警

1年前

可以自己编写一个oom.sh脚本 然后配置 -XX:OnOutOfMemoryError=sh oom.sh

1年前