我是 Java 和编程的新手。尝试通过书籍和这个社区的帮助自学(谢谢!)。我确定存在某些问题,但我不确定如何解决我的问题。
这是一些背景知识:我有一个在服务器上运行并解析许多页面(超过 20,000)的 Java 应用程序。这需要几个小时,一旦失败就很难排除故障。当它处理文件并将它们写入数据库时,我也让它写入一个文件,这样我就可以看到它在失败之前正在处理的最后一个条目。这有时很有用,但有时会失败,我不确定为什么(因为它适用于 netbeans)。
所以我的问题是……有没有办法获取我在 netbeans 中运行应用程序时遇到的错误堆栈?文件的输出只写我告诉它写的内容而不是错误堆栈。我尝试使用 > error.txt 运行 cron 作业,但没有帮助。这是写入文件还是某处?我想要结束的是每天运行的作业,并通过电子邮件将我创建的日志文件和失败时的 Java 错误堆栈发送给我。
有什么想法吗?
最佳答案
我认为问题在于您正在重定向标准输出而不是标准错误——我相信异常被发送到标准错误并且“>”重定向标准输出。
在 bash 中尝试“2>”重定向 stderr。
关于java - 如何监控 headless java进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5822837/