zamcoder/laravel-discord-log-notification

在 Laravel 中将日志记录到 Discord 频道

dev-main 2022-06-04 23:21 UTC

This package is auto-updated.

Last update: 2024-09-05 04:05:22 UTC


README

Latest Version on Packagist Software License Total Downloads

zamcoder/laravel-discord-log-notification 是一个 Laravel 扩展包,提供将日志发送到 Discord 频道的日志处理器。

安装

您可以通过 composer 安装此包

composer require zamcoder/laravel-discord-log-notification

如果您使用的是 Laravel 5.5 或更高版本,服务提供者将自动发现。

在早期版本中,您需要手动进行。您必须安装服务提供者

// config/app.php
'providers' => [
    ...
    ZamCoder\DiscordLogger\ServiceProvider::class
];

然后您可以发布配置文件

php artisan vendor:publish --provider "ZamCoder\DiscordLogger\ServiceProvider"

设置

准备 Discord 频道 Web 钩

为将接收日志的频道创建一个 Discord Web 钩。

准备日志配置

您必须将一个新的频道添加到您的 config/logging.php 文件中

// config/logging.php
'channels' => [
    //...
    'discord' => [
        'driver' => 'custom',
        'via'    => ZamCoder\DiscordLogger\Logger::class,
        'level'  => 'debug',
        'url'    => env('LOG_DISCORD_WEBHOOK_URL'),
    ],
];

然后您可以在 .env 文件中提供 Web 钩 URL

LOG_DISCORD_WEBHOOK_URL=https://discordapp.com/api/webhooks/abcd/1234

使用日志通道

您有两个选项:只记录到 Discord 或将频道添加到堆栈

只记录到 Discord 频道

只需更改 .env 变量以使用 Discord 频道

LOG_CHANNEL=discord

将频道添加到其他频道之上

config/logging.php 配置中将频道添加到堆栈中

// config/logging.php
'channels' => [
    //...
    'stack' => [
        'driver'   => 'stack',
        'channels' => ['single', 'discord'],
    ],
];

然后确保在 .env 文件中日志通道设置为堆栈

LOG_CHANNEL=stack

记录到多个 Discord 频道

当然,您可以将日志消息发送到多个 Discord 频道。只需在 config/logging.php 中创建所需数量的频道并将它们放入堆栈。每个频道应具有不同的名称,并指向不同的 Web 钩 URL。

它看起来像什么?

您可以使用提供的每个转换器预览其外观。

Screenshot

版本历史

查看 专门的变更日志

致谢

许可

MIT 许可证 (MIT)。有关更多信息,请参阅 许可文件