jiangslee/laravel-aliyun-sls

此包最新版本(v1.0.4)没有可用的许可证信息。

v1.0.4 2022-04-27 04:50 UTC

This package is auto-updated.

Last update: 2024-09-27 09:39:01 UTC


README

从 islenbo/laravel-aliyun-sls 分叉而来,感谢 islenbo!

备注

  • 由于aliyun-log-sdk\Log类与laravel-ide-helper\Log类存在冲突,因此将其复制到AliyunLogModel中。
  • 复制了@overtrue easywechat6.xHttpClient Traits
  • 创建了一个Demo.php文件进行测试,配置好.env后,执行php ./src/Demo.php,可以先看看日志能否成功发送到sls
  • 由于BufferHandler不适合在队列中使用,已经移除。

待办事项列表

  1. 使用队列记录日志?
  2. HttpClient是否支持Laravel-S协程?

使用

composer require Jiangslee/laravel-aliyun-sls

将服务提供者添加到 config/app.php

<?php

return [
    // ...
    'providers' => [
        /*
         * Package Service Providers...
         */
        \Jiangslee\LaravelAliyunSls\Providers\LaravelAliyunSlsProvider::class,
    ],
    // ...
];

将配置添加到 aliyunsls.php

    // Aliyun SLS config
    return [
        'endpoint' => env('ALIYUN_LOG_ENDPOINT', 'cn-shenzhen.log.aliyuncs.com'),
        'accessKeyId' => env('ALIYUN_LOG_ACCESSKEYID'),
        'accessKey' => env('ALIYUN_LOG_ACCESSKEY'),
        'project' => env('ALIYUN_LOG_PROJECT'),
        'logstore' => env('ALIYUN_LOG_LOGSTORE'),
        'formatter' => \Jiangslee\LaravelAliyunSls\Formatters\AliyunSlsFormatter::class
    ],

在 .env 中添加或编辑默认通道

LOG_CHANNEL=aliyun-sls

将配置添加到 logging.php

<?php
return [
    // ...
    'channels' => [
        'stack' => [
            'driver' => 'stack',
            // assign aliyun-sls
            'channels' => ['aliyun-sls'],
            'ignore_exceptions' => false,
            'tap' => [
            ]
        ],
        // ...
    ],
];

其他使用案例

Log::channel('aliyun-sls')->info('hello world!');