我如何将 Laravel 日志文件链接到 PaperTrial ?
根据这篇文章:
http://mattstauffer.co/blog/laravel-forge-logging-with-papertrail#step-4-add-a-syslog-handler
我按照步骤到达第 4 步,将 Syslog Monolog 处理程序放在 /app/route.php 文件中,进入 PaperTrial 仪表板,但我没有看到任何输出。
有什么帮助吗?谢谢。
我如何将 Laravel 日志文件链接到 PaperTrial ?
根据这篇文章:
http://mattstauffer.co/blog/laravel-forge-logging-with-papertrail#step-4-add-a-syslog-handler
我按照步骤到达第 4 步,将 Syslog Monolog 处理程序放在 /app/route.php 文件中,进入 PaperTrial 仪表板,但我没有看到任何输出。
有什么帮助吗?谢谢。
对于 Laravel 5.1 设置 forge 后,您应该在$app变量返回之前将以下代码添加到bootstrap/app.php文件
$app->configureMonologUsing(function($monolog){
$monolog->pushHandler(new Monolog\Handler\SyslogHandler('papertrail'));
});
return $app;
参数(在本例中为“papertrail”)可以是任何你想要的,这个名称将显示在 papertail 的事件屏幕上。
我让它使用标准的日志记录工具而不是 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
根据我在 Forge 中使用 Laravel 5.2.* 的经验,不再需要该文章中的第 4 步。在第 3 步之后,您所要做的就是将.env
Forge 中的环境设置设置APP_LOG=syslog
为要与 papertrail 一起使用的每个站点。
但是,这意味着 Laravel 将laravel.log
不再在此环境中登录。但是,在其他环境(例如开发环境)中,您当然可以通过简单地不对那里的文件laravel.log
进行任何更改来继续登录。.env