我正在 Micro EC2 上运行 mCruiseOn Server,这是一个基于 Java 的服务器端应用程序(套接字、多线程、memcached、mysql)。它经常崩溃。我怀疑可能是内存使用问题导致它崩溃。
我读了这篇文章,它非常有用。现在我需要知道我的应用程序是否由于内存不足而崩溃。有没有包含该信息的系统日志?
答案1
如果一个设计良好的应用程序由于内存不足而崩溃,它应该会给出一些有用的信息。尝试从终端调用应用程序并检查消息。
答案2
我使用 将所有输出重定向到一个文件> my.log &
,然后使用tail -f my.log
查看所有消息。由于某种原因,e.printstacktrace
并非所有消息都在 my.log 中。我遗漏了RuntimeException
和确切的根本原因ArrayOutofboundException
。