gpt4 book ai didi

php - 在 Lumen 5.2 中配置日志轮换

转载 作者:行者123 更新时间:2023-12-05 08:57:12 31 4
gpt4 key购买 nike

我尝试在 Lumen 上配置日志轮换,但我卡住了。我知道如何用 Laravel 做到这一点,但(又一次)我迷失了 Lumen。

我试图在 app/bootstrap.php 中添加它,因为我在某处读到了它:

$app->configureMonologUsing(function(Monolog\Logger $monolog) use ($app) {
$monolog->pushHandler(
new \Monolog\Handler\RotatingFileHandler($app->storagePath().'/logs/lumen.log', 5)
);
});

我可以看到这个错误:

Fatal error:  Uncaught Error: Call to a member function error() on null in /x/vendor/laravel/lumen-framework/src/Exceptions/Handler.php:36
Stack trace:
#0 /x/app/Exceptions/Handler.php(36): Laravel\Lumen\Exceptions\Handler->report(Object(Symfony\Component\Debug\Exception\FatalThrowableError))
#1 /x/vendor/laravel/lumen-framework/src/Concerns/RegistersExceptionHandlers.php(123): App\Exceptions\Handler->report(Object(Symfony\Component\Debug\Exception\FatalThrowableError))
#2 /x/vendor/laravel/lumen-framework/src/Concerns/RegistersExceptionHandlers.php(51): Laravel\Lumen\Application->handleUncaughtException(Object(Symfony\Component\Debug\Exception\FatalThrowableError))
#3 [internal function]: Laravel\Lumen\Application->Laravel\Lumen\Concerns\{closure}(Object(Error))
#4 {main}
thrown in /x/vendor/laravel/lumen-framework/src/Exceptions/Handler.php on line 36

我不明白这是什么意思,我应该怎么做。

有人成功地在 lumen 5.2 中旋转日志吗?

最佳答案

另一个想法:

<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Monolog\Formatter\LineFormatter;
use Monolog\Handler\RotatingFileHandler;

class LogServiceProvider extends ServiceProvider
{
/**
* Configure logging on boot.
*
* @return void
*/
public function boot()
{
$maxFiles = 7;

$handlers[] = (new RotatingFileHandler(storage_path('logs/lumen.log'), $maxFiles))
->setFormatter(new LineFormatter(null, null, true, true));

$this->app['log']->setHandlers($handlers);
}

/**
* Register the log service.
*
* @return void
*/
public function register()
{
// Log binding already registered in vendor/laravel/lumen-framework/src/Application.php.
}
}

然后不要忘记将服务提供者添加到您的 Lumen bootstrap/app.php 中:

$app->register(\App\Providers\LogServiceProvider::class);

关于php - 在 Lumen 5.2 中配置日志轮换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35274255/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com