监视核心转储应用程序

我打算devise一个C / C ++应用程序,作为恶魔进程运行,并在应用程序日志文件发生时收集核心转储。 从哪里可以知道一个应用程序崩溃的Linux有什么办法吗?

首先,您可以更改核心转储文件写入的目录。 在linux中,它是/proc/sys/kernel/core_pattern (参见这个博客 )

其次,您可以监视目录中的更改,请参阅Inotify – 如何使用它? – linux 。

只需将核心模式设置为特定目录并监视新文件。

另外一个选项(除了其他的好建议外)可能是设置/ proc / sys / kernel / core_pattern来将核心文件传输到正在创建的应用程序中,如此处所述。 应用程序可以决定是否创建核心文件,核心文件的存储位置,动态压缩核心文件,或通过IPC通知其他应用程序核心文件已经创建。