defstudio/laravel-telegram-log

Laravel 的 Telegram 日志通道

dev-master 2024-07-12 11:36 UTC

This package is auto-updated.

Last update: 2024-09-12 12:03:23 UTC


README

这是一个用于 Laravel 应用的 monolog Telegram 处理器

安装

您可以通过 composer 安装此软件包

composer require defstudio/laravel-telegram-log

您可以使用以下命令发布配置文件

php artisan vendor:publish --provider="Defstudio\LaravelTelegramLog\LaravelTelegramLogServiceProvider" --tag="config"

这是发布配置文件的内容

return [
    'bot_token' => env('TELEGRAM_BOT_TOKEN'),
    'chat_id' => env('TELEGRAM_CHAT_ID'),
];

使用方法

config/logging.php 中添加新的日志通道

'telegram' => [
    'driver' => 'custom',
    'via'    => LaravelTelegramLog::class,
    'level'  => 'error',
],

如果您使用 stack channel 作为默认日志记录器,您可以将 Telegram 通道添加到您的 stack 中

'stack' => [
    'driver' => 'stack',
    'channels' => ['single', 'telegram'],
]

或者,您可以直接在 .env 文件中更改默认的日志记录通道。

LOG_CHANNEL=telegram

太好了!您的 Laravel 项目现在可以向您的 Telegram 聊天发送日志了。

您可以使用 Laravel Log Facade 向您的聊天发送日志

// Use the Laravel Log Facade
use Illuminate\Support\Facades\Log;
...

// All Laravel log leves are avaiable
Log::channel('telegram')->emergency($message);
Log::channel('telegram')->alert($message);
Log::channel('telegram')->critical($message);
Log::channel('telegram')->error($message);
Log::channel('telegram')->warning($message);
Log::channel('telegram')->notice($message);
Log::channel('telegram')->info($message);
Log::channel('telegram')->debug($message);

Telegram 指令

创建新 Telegram 机器人并从特定群组或聊天获取 chat_id 的说明。

创建机器人

  1. 前往 Telegram 中的 @BotFather

  2. 发送 /newbot 以开始创建新的机器人。

    message

  3. 设置机器人的用户名。

    defines-a-bot-name

  4. 现在您需要允许您的机器人发送直接消息,因此向 @BotFather 发送 /setjoingroups,选择您的机器人并点击启用

    set-join-group

  5. 获取机器人令牌并将其添加到您的 .env 文件中。

    get-bot-token

    在 .env 中的机器人令牌

    token-in-env-file

获取 Telegram 聊天 ID

  • 如果您想向群组发送消息

    1. 将您的机器人添加到 Telegram 群组中。
    2. 从其他用户向该群组发送任何消息。
  • 如果您想向用户发送直接消息

    1. 搜索您的机器人名称,并选择聊天。
    2. 向您的机器人发送 /start
  1. 访问以下链接以获取有关您的机器人更新的信息并获得 chat_id

    https://api.telegram.org/botXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/getUpdates

将 URL 中的所有 X 替换为您的 机器人令牌

  1. 搜索您想要发送消息的聊天,并获取 chat->id

    get-a-chat-id

  2. 将其添加到您的 .env 文件中

    env

变更日志

有关最近更改的更多信息,请参阅 变更日志

贡献

有关详细信息,请参阅 贡献指南

安全漏洞

有关如何报告安全漏洞的说明,请参阅 我们的安全策略

鸣谢

许可证

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