对于你来说,这是一个棘手的问题 - 我们有一个Java Web应用程序,部署在Amazon ElasticBeanStalk上的Tomcat Web服务器上。并且我们认为我们有内存泄漏b / c似乎JVM每晚都会因OutOfMemory异常而崩溃。问题是在崩溃之后,EBS会自动废弃旧的EC2实例并启动一个新的实例。所有日志和信息也被废弃了......
我现在正在开发一个自定义CloudWatch指标来监视JVM的内存(你会认为应该有一个准备好的...)但这不会帮助我生成堆转储
有没有人遇到类似的问题,知道如何在EBS上捕获这些错误?
这听起来像是不寻常的EC2(不是EBS)实例行为。有趣的是,如果Tomcats摔倒,那么机器实例会受到影响(就停止或终止而言)。
这是我建议诊断的:
祝好运。希望有所帮助。
考虑像Sumologic这样的日志收集服务。您指定的日志文件将被收集并可在线进行分析。因此,即使您的EC2实例被替换,您也可以进行取证以查看它们发生了什么