[linux] регистрирование segmentation fault-ов
Для генерации корок просто выполни ulimit -c unlimited
/proc/sys/debug/exception-trace
и для лога тоже кажестся есть фича в новых ядрах, а для x86-64 - даже в неновых
ещё какой-нибудь pacct может быть поможет или аудит
, напиши патч, чтобы можно было нормально задать имя кор:
The name of the file is controlled via the sysctl(8) variableТут же дел на 15 минут, из них 13 на то, чтобы найти нужное место в исходниках ядра. А если ты в них уже ориентируешься, то найдёшь сразу.
kern.corefile. The contents of this variable describes a filename to
store the core image to. This filename can be absolute, or relative
(which will resolve to the current working directory of the program gen-
erating it). Any sequence of %N in this filename template will be
replaced by the process name, %P by the processes PID, and %U by the UID.
The name defaults to %N.core, yielding the traditional FreeBSD behaviour.
И может быть тебе удастся протолкнуть этот патч в основной git (или чё там за vcs?)
ты читай посты-то, а не только пиши
Настроил — все работает, именно так, как мне надо! Отлично
Оставить комментарий
Landstreicher
Хочу сделать так, чтобы при каждом падении какого-либо процесса с SIGSEGV в журнале (например, в /var/log/messages) отмечался pid процесса, имя исполнимого файла, текущий instruction pointer, время, аргументы запуска (или другая информация, чтобы потом воспроизвести баг). Еще неплохо было бы генерить core-файлы, чтобы они включали в себя уникальный идентификатор (хотя бы pid). Видел что-то похожее в каких-то *BSD системах (не уверен, давно было).Как такое настроить? ОС — Linux 2.6.23 на x86.