Telegram log target for Yii 2.
The preferred way to install this extension is through composer.
Either run
composer require "sergeymakinen/yii2-telegram-log:^2.0"
or add
"sergeymakinen/yii2-telegram-log": "^2.0"
to the require section of your composer.json
file.
First create a new bot and obtain its token. It should look like 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11
.
You will also need a chat ID to send logs to. You can use the @get_id_bot
bot to obtain it. It should look like 123456789
.
Then set the following Yii 2 configuration parameters:
'components' => [
'log' => [
'targets' => [
[
'class' => 'sergeymakinen\yii\telegramlog\Target',
'token' => '123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11',
'chatId' => 123456789,
],
],
],
],
By default yii\log\Logger
error levels are mapped to emojis (you can tweak them in the levelEmojis
property):
Error level | Emoji |
---|---|
Logger::LEVEL_ERROR |
☠️ |
Logger::LEVEL_WARNING |
|
Logger::LEVEL_INFO |
ℹ️ |
Logger::LEVEL_TRACE |
📝 |
It's also possible to disable notifications - entirely or per logger level (look at the enableNotification
property), for example:
public $enableNotification = [
Logger::LEVEL_ERROR => true,
Logger::LEVEL_WARNING => false,
Logger::LEVEL_INFO => false,
];
This will disable notifications for warning and info level messages and enable them for other levels (honestly, you can omit the LEVEL_ERROR
definition here as it's true
by default).