Анализ Apache / PHP Core Dump - PullRequest
       4

Анализ Apache / PHP Core Dump

2 голосов
/ 02 декабря 2010

Я периодически получаю сбой Seg от apache, поэтому я включил дамп ядра на своих серверах, чтобы попытаться выяснить, что происходит. Прошлой ночью я получил еще один и пытался изучить дамп ядра, чтобы выяснить, что происходит. Это определенно процесс PHP, поэтому я гуглил, как проверить их специально для PHP. Я скачал файл .gdbinit для PHP 5.2 и запустил следующее в файле дампа:

$ gdb apache2 dumpfile
[reading/loading symbols]
(gdb) bt
[...backtrace...]
(gdb) source ~/.gdbinit
(gdb) dump_bt executor_globals.current_execute_data
Attempt to extract a component of a value that is not a structure.

Я должен получить обратную трассировку после dump_bt executor_globals.current_execute_data для сценария PHP, который вызвал ошибку сегмента, но я продолжаю получать Attempt to extract a component of a value that is not a structure. вместо этого.

1 Ответ

1 голос
/ 24 февраля 2011

В первый раз у меня возникла такая же проблема с тобой. Запустите снова команды bt и dump_bt , и все заработает:

(gdb) dump_bt executor_globals.current_execute_data
Attempt to extract a component of a value that is not a structure.

(gdb) bt
#0  0x00002af8f874a5da in AppendImages () from /usr/lib64/libMagick.so.10
#1  0x00002af8f84586ce in MagickAppendImages () from /usr/lib64/libWand.so.10
#2  0x00002af8f81a3ad8 in zim_imagick_appendimages (ht=<value optimized out>, return_value=0x2af8f9ded108, 
    return_value_ptr=<value optimized out>, this_ptr=<value optimized out>, return_value_used=<value optimized out>)
    at /var/tmp/imagick/imagick_class.c:8790

(gdb) dump_bt executor_globals.current_execute_data
[0xe8609940] appendimages() /var/www/html/xx/yy.php:803 
[0xe8605070] genCode() /var/www/html/xx/zz.php:127 
...