这个 Laravel 模块简化了向 Telegram 发送日志和错误消息。 它非常适合需要简单日志记录解决方案的小型项目。 虽然存在更高级的选项,但该模块优先考虑易于设置和配置。
模块设置
创建一个 Telegram 机器人: 生成一个机器人并获取其令牌。
创建一个 Telegram 群组: 创建一个群组,启用“主题”,并将您的机器人添加为管理员。
配置.env
:将机器人的令牌和组ID添加到您的.env
文件:
<code>TG_LOGGER_TOKEN="your_bot_token" TG_LOGGER_CHAT_ID="your_group_id"</code>
<code class="language-bash">composer require prog-time/tg-logger</code>
<code class="language-bash">php artisan vendor:publish --tag=config</code>
config/tg-logger.php
:使用您的设置填充配置文件:<code class="language-php">return [ 'token' => env('TG_LOGGER_TOKEN'), 'chat_id' => env('TG_LOGGER_CHAT_ID'), 'topics' => [ [ 'name' => 'Debug messages', 'icon_color' => '9367192', 'level' => 'debug', ], [ 'name' => 'Cron tasks', 'icon_color' => '9367192', 'level' => 'crone', ], [ 'name' => 'Errors', 'icon_color' => '9367192', 'level' => 'error, notice, warning, emergency', ] ] ];</code>
tg-logger.php
文件使用以下参数:
token
:您的 Telegram 机器人令牌。chat_id
:您的 Telegram 群组 ID。topics
:定义日志主题名称、图标颜色和关联日志级别的数组。<code class="language-bash">php artisan tglogger:create-topics</code>
这将覆盖 tg-logger.php
并添加主题 ID。
使用 TgLogger 模块
A.处理系统错误:
修改您的 config/logging.php
文件以使用模块的处理程序:
<code class="language-php">'channels' => [ ... 'telegram' => [ 'driver' => 'monolog', 'handler' => ProgTime\TgLogger\TgHandler::class, 'formatter' => ProgTime\TgLogger\TgFormatter::class, 'level' => 'debug', ], ... ],</code>
然后,在您的 LOG_CHANNEL=telegram
文件中设置 .env
。
B.直接发送消息:
使用TgLogger
类直接发送消息:
<code class="language-php">TgLogger::sendLog('Your message', 'level');</code>
欢迎您在 GitHub 上提供反馈和贡献!
以上是将日志发送到 Telegram。 Laravel 模块的详细内容。更多信息请关注PHP中文网其他相关文章!