Приложение для мониторинга основных дампов - PullRequest
3 голосов
/ 27 марта 2012

Я планирую разработать приложение на C / C ++, которое будет запускаться как демон-процесс и собирать дампы ядра по мере их появления вместе с файлами журналов приложений.Есть ли способ в Linux, откуда я могу узнать, что приложение потерпело крах.

Ответы [ 2 ]

4 голосов
/ 27 марта 2012

Во-первых, вы можете изменить каталог, в который записывается файл дампа памяти. В Linux это /proc/sys/kernel/core_pattern (см. этот блог )

Во-вторых, вы можете отслеживать каталог на предмет изменений, см. Inotify - как его использовать? - linux .

Просто установите основной шаблон в определенный каталог и следите за его новыми файлами.

1 голос
/ 27 марта 2012

Другим вариантом (в дополнение к другим хорошим предложениям на данный момент) может быть настройка / proc / sys / kernel / core_pattern для передачи файла core в приложение по мере его создания, как описано здесь . Приложение может, например, решить, создавать ли файл ядра или нет, где хранить файл ядра, сжимать файл ядра на лету или уведомлять другое приложение через IPC о том, что файл ядра был создан.

...