0

我如何将 Laravel 日志文件链接到 PaperTrial ?

根据这篇文章:

http://mattstauffer.co/blog/laravel-forge-logging-with-papertrail#step-4-add-a-syslog-handler

我按照步骤到达第 4 步,将 Syslog Monolog 处理程序放在 /app/route.php 文件中,进入 PaperTrial 仪表板,但我没有看到任何输出。

有什么帮助吗?谢谢。

4

3 回答 3

4

对于 Laravel 5.1 设置 forge 后,您应该在$app变量返回之前将以下代码添加到bootstrap/app.php文件

    $app->configureMonologUsing(function($monolog){
        $monolog->pushHandler(new Monolog\Handler\SyslogHandler('papertrail'));
    });

return $app;

参数(在本例中为“papertrail”)可以是任何你想要的,这个名称将显示在 papertail 的事件屏幕上。

于 2015-09-24T20:55:20.373 回答
1

我让它使用标准的日志记录工具而不是 Monolog 工作。这样就不需要额外安装了。只需将其添加到 rsyslogd 的 conf 中

### Laravel Log
$InputFileName /path/to/vhost/dir/app/storage/logs/laravel.log
$InputFileTag laravel-errors-domain.com:
$InputFileStateFile state-laravel-errors-domain.com
$InputFileSeverity error
$InputRunFileMonitor

如果您不发送所有内容,请确保此日志包含在发送操作中。

然后发出

service rsyslog restart
于 2015-07-19T02:38:43.070 回答
0

根据我在 Forge 中使用 Laravel 5.2.* 的经验,不再需要该文章中的第 4 步。在第 3 步之后,您所要做的就是将.envForge 中的环境设置设置APP_LOG=syslog为要与 papertrail 一起使用的每个站点。

但是,这意味着 Laravel 将laravel.log不再在此环境中登录。但是,在其他环境(例如开发环境)中,您当然可以通过简单地不对那里的文件laravel.log进行任何更改来继续登录。.env

于 2017-01-29T10:15:28.960 回答