Я хочу записать все, используя журнал ошибок Monolog to webserver (apache) - то же самое, что и с помощью функции error_log().Silex - только зарегистрируйтесь в Monolog ErrorLogHandler
Однако, если настроить ведение журнала следующим образом:
$app->register(new Silex\Provider\MonologServiceProvider(), array(
'monolog.logfile' => sys_get_temp_dir().'/app.log'
));
$app['monolog'] = $app->share($app->extend('monolog', function($monolog, $app) {
$monolog->pushHandler(new ErrorLogHandler(ErrorLogHandler::OPERATING_SYSTEM, Logger::WARNING));
return $monolog;
}));
все записывается в /tmp/app.log и предупреждение + в апача журнал ошибок. Уровни журнала здесь не очень актуальны, я хотел бы иметь возможность регистрироваться в Apache log ТОЛЬКО (в основном, для готовой поддержки для логротации).
Я предполагаю, что есть два варианта:
- Уже используя правильный путь для MonologServiceProvider monolog.logfile (я мог бы определить его «php_value error_log» в апача ВХост конфигурации, а затем использовать ini_get («error_log») Я полагаю, хотя я бы предпочел другое решение, которое не требует, чтобы я добавлял дополнительные записи в файл vhost)
- Как-то переопределение исходной конфигурации регистрации (http://silex.sensiolabs.org/doc/providers/monolog.html#customization упоминает об изменении обработчика, но не дает примера, как)