Как запустить дамп ядра в php?

Мое веб-приложение иногда — но очень редко — выбрасывает конкретное исключение. Я не знаю, почему это происходит, и я не смог воспроизвести его или не видел, чтобы это произошло где-либо, кроме как на моем рабочем сервере. Итак, я хочу иметь возможность, когда происходит это конкретное исключение, выгружать все текущее состояние php, чтобы я мог отслеживать его выполнение и выяснять, что его вызвало.

Я не могу использовать xdebug, потому что это рабочий сервер, и xebug замедляет выполнение (которое уже достаточно медленно). Итак, как я могу сказать php сбросить его текущее состояние, чтобы я мог проверить его позже?

Единственное, о чем я могу думать, это использовать exec в kill текущий процесс, но это кажется очень грязным, и в любом случае было бы лучше, если бы я мог сбросить состояние php, а не состояние apache. Я даже не знаю, возможно ли это …

2

Решение

debug_backtrace() предоставляет все запрошенные аргументы и функции, чтобы вы могли видеть его путь и то, что его вызвало.

Вы можете сохранить это в файл и просмотреть его по частям

http://php.net/manual/en/function.debug-backtrace.php

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]