如何在 lumen/laravel 应用程序中使用谷歌云日志记录

时间:2021-05-28 04:32:53

标签: php laravel logging google-cloud-platform lumen

我想知道如何在 lumen\laravel 应用程序中使用 google cloud logging 库,有 some examples for php,但我想知道如何在该框架中以最佳方式实施。

1 个答案:

答案 0 :(得分:2)

Lumen 似乎与 Laravel 使用相同的日志记录基础架构。默认情况下,它使用 Monolog,这是一个与 PSR-3 兼容的日志库,但我认为以下代码也适用于使用 Google 云进行日志记录:

创建记录器工厂类:

class CreateGoogleCloudLogger {
    public function __invoke() {
       $logging = new LoggingClient([
          'projectId' => $projectId
       ]);
       return $logging->psrLogger('app');      
    }
}

更改您的 .env 文件:

LOG_CHANNEL=googlecloud

然后将其添加到您的 AppServiceProvider 注册函数中

config(['logging.channels.googlecloud' => [
    'driver' => 'custom',
    'via' => App\Logging\CreateGoogleCloudLogger::class,
] ]);

这应该使用工厂来创建一个 PSR-3 兼容的记录器。