.settings.php, блок exception_handling
'exception_handling' => [
'value' => [
'debug' => false,
'handled_errors_types' => E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE,
'exception_errors_types' => E_ALL & ~E_NOTICE & ~E_WARNING & ~E_STRICT & ~E_USER_WARNING & ~E_USER_NOTICE & ~E_COMPILE_WARNING & ~E_DEPRECATED,
'ignore_silence' => false,
'assertion_throws_exception' => true,
'assertion_error_type' => 256,
'log' => [
'className' => '\Namespace\GlobalLogHandler',
],
],
'readonly' => false,
],
Класс GlobalLogHandler
class GlobalLogHandler extends \Bitrix\Main\Diag\ExceptionHandlerLog
{
private Logger $logger;
public function initialize(array $options)
{
$this->logger = LoggerLocator::getLogger()->setChannel('global');
}
/**
* @param Throwable $exception
* @param $logType
*/
public function write($exception, $logType)
{
$this->logger->emergency($exception->getMessage(), [
'file' => $exception->getFile(),
'line' => $exception->getLine(),
'trace' => $exception->getTraceAsString()
]);
}
}
Пишу на главной странице где-нибудь
throw new \Exception('fffffffffffffffffffffffffffffffuuuuuuuuuuuuuuuuuuuuuuuuu');
В итоге на странице вижу
При выполнении скрипта возникла ошибка. Включить расширенный вывод ошибок можно в файле настроек .settings.php
И в логи ничего не пишется. Не могу понять, что я делаю не так.