我目前正在使用silex框架和monog作为日志机制。通过使用以下组件--https://github.com/silexphp/Silex-WebProfiler(Silex WebProfiler),我能够成功地将默认的SyfOffWebPrrror集成在项目中。它可以工作,但不幸的是,它无法显示Monog在其探查器页面中的日志消息。有人知道如何解决这个问题吗?
这是我的配置,如果这是相关的:

use Silex\Provider;
...
//Monolog
$app->register(new Provider\MonologServiceProvider(), array(
    'monolog.logfile' => __DIR__ . '/../log/development.log',
    'monolog.name'    => 'MyAppName'
));
...
// Web Profiler
if ($app['debug']) {
    $app->register(new Provider\WebProfilerServiceProvider(), array(
        'profiler.cache_dir' => __DIR__.'/../cache/profiler/',
        'profiler.mount_prefix' => '/_profiler', // this is the default
    ));
}

最佳答案

我也在想,我在MonologServiceProvider找到了这些台词。

if ($bridge = class_exists('Symfony\Bridge\Monolog\Logger')) {
    $app['monolog.handler.debug'] = function () use ($app) {
        return new DebugHandler($app['monolog.level']);
    };
}

symfony monog bridge组件启用了对web profiler的日志记录。我把这个添加到我的composer.json
"symfony/monolog-bridge": "~2.3"

现在,我在web剖析器的面板中看到了日志条目。(确保monog桥的版本与您在composer.json中声明的其他symfony组件的版本一致可能是一个好主意)

关于php - 如何将Monolog集成到Silex-WebProfiler中?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18723040/

10-10 13:52