有没有办法在 PCF 中为 Java 应用程序收集 thread-dump
和 heap-dump
。
我知道我们可以将 ssh
写入应用程序并运行任何 linux 命令。但是 ssh
被运营团队禁用了。所以我想了解 PCF 中是否还有其他支持的方式
最佳答案
除了 Tim 提到的 Spring Boot Actuator 端点,当 ssh
privleges 不是问题时,还有 cf java
cli 插件,它创建和下载堆转储和线程转储一样简单cf java heap-dump APP_NAME > heapdump.hprof
最重要的是 Java Memory Assistant ,它很好地集成到 Java Buildpack 中。
请注意,堆转储的创建始终受限于容器的可用磁盘大小。根据垃圾收集后堆的大小(在创建堆转储时自动触发),可能需要通过 cf scale APP_NAME -k 2G
增加容器的磁盘大小。
关于cloud-foundry - PCF 中的 Java 堆转储和线程转储,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54361564/