flamix / telegram-log

通过机器人将 Laravel 日志发送到 Telegram 聊天

dev-main 2023-11-10 10:16 UTC

This package is auto-updated.

Last update: 2024-09-10 12:36:21 UTC


README

composer require flamix/telegram-log

配置

请通过修改项目路径下的 .env 文件来定义 Telegram Bot 凭据和聊天 ID 作为环境参数

TELEGRAM_BOT_TOKEN=null
TELEGRAM_CHAT_ID=null
TELEGRAM_LOGGER_TEMPLATE=null
TELEGRAM_OPTIONS=[]

默认情况下 LOG_CHANNEL 将设置为 stack,因此您需要在设置以上配置后,在环境中设置默认记录器

LOG_CHANNEL=telegram

发布配置文件和视图以覆盖

php artisan vendor:publish --provider "Flamix\TelegramLog\TelegramServiceProvider"
use Illuminate\Support\Facades\Log;

public function register()
    {
        $this->reportable(function (Throwable $e) {
            Log::channel('telegram')->emergency($e->getMessage(), ['file' => $e->getFile(), 'line' => $e->getLine()]);
        });
    }

创建机器人

要使用此插件,您需要创建 Telegram 机器人

  1. 在 Telegram 中转到 @BotFather
  2. 发送 /newbot
  3. 为您的机器人设置名称和机器人名称。
  4. 获取令牌并将其添加到您的 .env 文件(如上所述)
  5. 转到您的机器人并发送 /start 消息

在运行时更改日志模板

  1. 更改模板的配置。
config(['telegram-logger.template'=>'laravel-telegram-logging::custom'])
  1. 像平常一样使用 Log