laravel 日志每天一个文件,每天第一条记录是 prod.ERROR: Predis\Connection\ConnectionException: Error while reading line from the server.****vendor/predis/predis/src/Connection/AbstractConnection.php:168 的时候文件 owener 为 root ,导致之后日志写不进去报错,而日志第一条为正常业务日志时是没有问题的。 猜测是其他以 root 用户启动的进程创建了当天的日志文件,导致 owner 为 root 。 artisan 是 root 运行的,看起来像是 supervisor 启动的。 求解决办法。。
1
Dlad 2016-08-17 10:53:50 +08:00
我使用 laravel/console 时也曾遇到这个问题,同求最佳实践。
|
2
noea 2016-08-17 10:59:16 +08:00
笨办法,
crontab 12 点的时候,先看日志是否存在,否则, touch ,执行 chown 把日志 owner 改回去。 |
3
icemanpro 2016-08-17 11:24:33 +08:00
bootstrap/app.php 中 加上
$app->configureMonologUsing(function(Monolog\Logger $monolog) { $filename = storage_path('logs/laravel-'.php_sapi_name().'.log'); $handler = new Monolog\Handler\RotatingFileHandler($filename); $monolog->pushHandler($handler); }); 通过 php_sapi_name 生成不同的 log |
4
hanyouchun66 2016-08-27 16:00:29 +08:00
php artisan 用了 root 用户执行
|