Обновлен до CodeIgniter 2.0, но теперь мои ошибки php не появляются в журналах, что мне делать? - PullRequest
1 голос
/ 09 марта 2011

ОК, поэтому я написал приложение, используя CodeIgniter 1.7.3, и все было прекрасно.

Затем я перешел на CodeIgniter 2.0, и все работает нормально, за исключением того, что теперь он не отображает ошибки в моем php_error.log

так, например, если у меня была опечатка в имени метода, я получал что-то вроде:

[04-Feb-2011 16:20:01] PHP Fatalошибка: вызов неопределенного метода Some_controller :: my_method () в /Applications/MAMP/htdocs/application/controllers/some_controller.php в строке 61

теперь я ничего не получаю.только исключение сервлета 500 в моем окне браузера.

До сих пор я проверил мой php.ini, который имеет error_reporting = E_ALL и log_errors = On, также display_errors = On (хотя я думаю, что это регистрирует на экране нет файла)

Я только что попытался умышленно испорченный php-файл без codeigniter, и я получаю сообщение об ошибке в своем журнале, например:

[10 марта 2011 02:47:02]Неустранимая ошибка PHP: вызов неопределенной функции fake_method () в /Applications/MAMP/htdocs/test.php в строке 2

, поэтому она выглядит только как codeigniter, который не регистрируется.

В моем config / config.php установлен режим ведения журнала следующим образом: $ config ['log_threshold'] = 4;

также у index.php есть error_reporting (E_ALL);

Это такая боль дляотлаживать, когда я не получаю номера строк ... Может кто-нибудь еще сказать мне, что еще я должен изменить / проверить, чтобы восстановить мою регистрацию?

Ответы [ 4 ]

1 голос
/ 10 марта 2011

Убедитесь, что для вашего index.php в отчете об ошибках установлено значение ВСЕ

error_reporting(E_ALL);

Для отображения ошибок в журналах, проверьте вашу конфигурацию в строке 181. Если вы установите его в $config['log_threshold'] = 4;

это будет регистрировать все ...

0 голосов
/ 13 сентября 2012

Стоит также отметить, что если у вас есть определенные среды, но вы их не используете, в 'production' and 'testing' устанавливается error_reporting (0).Смотрите строку index.php 31 и далее:

if (defined('ENVIRONMENT')) {
switch (ENVIRONMENT)
{
    case 'development':
        error_reporting(E_ALL);
    break;

    case 'testing':
    case 'production':
        error_reporting(0);
    break;

    default:
        exit('The application environment is not set correctly.');
}
}
0 голосов
/ 20 марта 2011

, поэтому я обнаружил, что я автоматически загрузил библиотеку (paypal_lib), которая по какой-то причине имела error_reporting (0) вверху.

0 голосов
/ 09 марта 2011

Попробуйте установить ini_set('display_erros',1);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...