Java Heap Dump parameter not generating dumps in specified path and app crashes due to out of memory

I don’t think the JVM can intervene when it is the Kernel that OOMs your app?

Each time Fly boots up an app, it does so on a clean volume, so persisting crash dumps on what’s essentially ephemeral isn’t going to help.

Try allocating and mounting a persistent volume onto your app (ref, docs) and see if heap dumps survive there.

Also, if it is possible to write out heap dumps to stdout, then you can grab the logs via fly-log-shipper or fly-log-local (ref).