Alex
|
veteran
|
|
|
|
Рег.: 16.10.2002
|
Сообщений: 1940
|
Из: ЮЗАО
|
Рейтинг: 18
|
|
[linux] регистрирование segmentation fault-ов
04.12.2007 23:34
|
|
|
Хочу сделать так, чтобы при каждом падении какого-либо процесса с SIGSEGV в журнале (например, в /var/log/messages) отмечался pid процесса, имя исполнимого файла, текущий instruction pointer, время, аргументы запуска (или другая информация, чтобы потом воспроизвести баг). Еще неплохо было бы генерить core-файлы, чтобы они включали в себя уникальный идентификатор (хотя бы pid). Видел что-то похожее в каких-то *BSD системах (не уверен, давно было). Как такое настроить? ОС - Linux 2.6.23 на x86.
|
|
Joe_Bishop
|
Carpal Tunnel
|
|
|
|
Рег.: 05.09.2005
|
Сообщений: 5597
|
|
Рейтинг: 154
|
|
Re: [linux] регистрирование segmentation fault-ов
[re: Alex]
04.12.2007 23:39
|
|
|
Для генерации корок просто выполни ulimit -c unlimited
|
|
Shurick
|
Bad Man
|
|
|
|
Рег.: 30.08.2002
|
Сообщений: 6379
|
|
Рейтинг: 303
|
|
Re: [linux] регистрирование segmentation fault-ов
[re: Alex]
04.12.2007 23:45
|
|
|
/proc/sys/debug/exception-trace
|
|
gadfather
|
Carpal Tunnel
|
|
|
|
Рег.: 05.11.2003
|
Сообщений: 47302
|
Из: пл. Гагарина
|
Рейтинг: 16961
|
|
Re: [linux] регистрирование segmentation fault-ов
[re: Alex]
04.12.2007 23:51
|
|
|
/proc/sys/kernel/core_* и для лога тоже кажестся есть фича в новых ядрах, а для x86-64 - даже в неновых еще какой-нибудь pacct может быть поможет или аудит
|
You can't always get what you want |
|
glebius
|
geek
|
|
|
|
Рег.: 07.12.2002
|
Сообщений: 45226
|
|
Рейтинг: 13030
|
|
Re: [linux] регистрирование segmentation fault-ов
[re: Alex]
05.12.2007 13:53
|
|
|
Ха-ха, как линукс дампит коры меня всегда смешило, а даже отметил это в своем hatelist.
Alex, напиши патч, чтобы можно было нормально задать имя кор:
Quote:
The name of the file is controlled via the sysctl(8) variable 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.
Тут же дел на 15 минут, из них 13 на то, чтобы найти нужное место в исходниках ядра. А если ты в них уже ориентируешься, то найдешь сразу.
И может быть тебе удастся протолкнуть этот патч в основной git (или че там за vcs?)
|
shut up and code |
|
gadfather
|
Carpal Tunnel
|
|
|
|
Рег.: 05.11.2003
|
Сообщений: 47302
|
Из: пл. Гагарина
|
Рейтинг: 16961
|
|
Re: [linux] регистрирование segmentation fault-ов
[re: glebius]
05.12.2007 13:56
|
|
|
давно уже сделали ты читай посты-то, а не только пиши
|
You can't always get what you want |
|
Alex
|
veteran
|
|
|
|
Рег.: 16.10.2002
|
Сообщений: 1940
|
Из: ЮЗАО
|
Рейтинг: 18
|
|
Re: [linux] регистрирование segmentation fault-ов
[re: gadfather]
05.12.2007 19:58
|
|
|
Спасибо всем ответившим!
Настроил - все работает, именно так, как мне надо! Отлично
Редактировал Alex (06.12.2007 20:31)
|
|