metallheart / laravel-telegram-logger
Laravel package for logging to Telegram
v1.0.0
2025-07-14 20:29 UTC
Requires
- php: ^8.2
- illuminate/http: ^10.0|^11.0|^12.0
- illuminate/support: ^10.0|^11.0|^12.0
- monolog/monolog: ^3.0
Requires (Dev)
- orchestra/testbench: ^8.0|^9.0|^10.0
- phpunit/phpunit: ^10.0|^11.0
README
Пакет для отправки логов Laravel в Telegram.
Установка
composer require metallheart/laravel-telegram-logger
Пакет автоматически регистрируется через Laravel Package Discovery.
Настройка
- Опубликуйте конфигурацию:
php artisan vendor:publish --tag=telegram-logger-config
- Добавьте переменные в
.env
:
TELEGRAM_BOT_TOKEN=your_bot_token TELEGRAM_CHAT_ID=your_chat_id TELEGRAM_LOG_LEVEL=error TELEGRAM_LOG_ENABLED=true
- Добавьте канал в
config/logging.php
:
'channels' => [ // ... другие каналы 'telegram' => [ 'driver' => 'telegram', ], // Или добавьте в stack 'stack' => [ 'driver' => 'stack', 'channels' => ['single', 'telegram'], ], ],
Использование
Основное использование
use Illuminate\Support\Facades\Log; // Отправка логов через канал telegram Log::channel('telegram')->error('Произошла ошибка!'); Log::channel('telegram')->info('Информационное сообщение'); // Или используя stack Log::error('Ошибка будет отправлена в файл и Telegram');
С контекстом
Log::channel('telegram')->error('Ошибка в оплате', [ 'user_id' => 123, 'amount' => 1000, 'payment_method' => 'card' ]);
Конфигурация
Доступные опции в config/telegram-logger.php
:
bot_token
- Токен бота Telegramchat_id
- ID чата для отправки сообщенийlog_level
- Минимальный уровень логов (debug, info, notice, warning, error, critical, alert, emergency)timeout
- Таймаут HTTP запроса (секунды)fallback_channel
- Резервный канал при недоступности Telegramenabled
- Включить/отключить логированиеmessage_format
- Формат сообщенияinclude_context
- Включать контекст в сообщенияinclude_extra
- Включать дополнительные данныеdate_format
- Формат даты
Получение Bot Token и Chat ID
Bot Token
- Найдите @BotFather в Telegram
- Отправьте
/newbot
- Следуйте инструкциям
- Скопируйте токен
Chat ID
- Добавьте бота в чат или группу
- Отправьте сообщение
- Откройте
https://api.telegram.org/bot<TOKEN>/getUpdates
- Найдите
chat.id
в ответе
Лицензия
MIT