nestednet / timber-laravel-sentinel
Laravel 包,用于与 Timber (timber.io) 日志 API 通信
Requires
- php: >=7.2
- guzzlehttp/guzzle: ^6.3
- illuminate/support: ~6
- symfony/psr-http-message-bridge: ^1.1
Requires (Dev)
- mockery/mockery: ^1.1
- orchestra/testbench: ~3.0
- phpunit/phpunit: ~7.0
- sempro/phpunit-pretty-print: ^1.0
This package is auto-updated.
Last update: 2024-09-05 02:05:55 UTC
README
A Laravel 5+ 包装器,用于 Timber Logger 服务。使用它来记录 HTTP 请求或自定义事件到 Timber。
安装
1. 通过 Composer 需求此包
$ composer require rebing/timber-laravel
2. Laravel 5.5+ 将自动发现该包,对于旧版本,请在您的 config/app.php
文件中添加以下服务提供者和别名
Rebing\Timber\TimberServiceProvider::class,
和别名
'Timber' => 'Rebing\Timber\Support\Facades\Timber',
在您的 config/app.php
文件中。
3. 发布配置文件
$ php artisan vendor:publish --provider="Rebing\Timber\TimberServiceProvider"
4. 查看配置文件
config/graphql.php
并将您的 Timber API 密钥添加到 .env
5. (可选)记录传入请求
检查 HTTP 请求
6. (可选)记录所有消息
检查 记录所有消息
用法
HTTP 请求
要记录 HTTP 请求,请使用 Rebing\Timber\Middleware\LogRequest::class
中间件。这将记录所有传入的请求和响应,包括上下文和 Auth 数据。
例如,您可以将它添加到 Kernel.php
class Kernel extends HttpKernel { /** * The application's global HTTP middleware stack. * * These middleware are run during every request to your application. */ protected $middleware = [ Rebing\Timber\Middleware\LogRequest::class, ]; }
记录所有消息
这需要 Laravel 5.6+
您可以使用 Laravel 的 Logger
门面将所有消息记录到 Timber。
在 config/logging.php
中添加一个新通道
'channels' => [ 'timber' => [ 'driver' => 'monolog', 'handler' => Rebing\Timber\Handlers\TimberHandler::class, ], ];
并在 .env 中更新 LOG_CHANNEL=timber
然后您可以通过提供消息、类型和数据来轻松记录自定义数据。例如
$data = [ 'key' => 'value', ]; \Log::info('Some message', ['type' => $data]);
自定义事件
您还可以记录自定义数据。上下文将自动添加。
use Rebing\Timber\Requests\Events\CustomEvent; $data = [ 'some' => 'data', ]; $customEvent = new CustomEvent('Log message', 'custom', $data); dispatch($customEvent); // Or $customEvent->send();
禁用记录
您可以通过在 .env 文件中更新来禁用将日志发送到 Timber
TIMBER_ENABLED=false
测试
$ phpunit
贡献
有关详细信息和一个待办事项列表,请参阅 contributing.md
安全
如果您发现任何安全相关的问题,请通过电子邮件 mikk.nurges@rebing.ee 而不是使用问题跟踪器
鸣谢
许可
MIT。有关更多信息,请参阅 许可文件