Telegram log target for Yii 2
Telegram log target for Yii 2., (*1)
, (*2)
, (*3)
, (*4)
Installation
The preferred way to install this extension is through composer., (*5)
Either run, (*6)
composer require "sergeymakinen/yii2-telegram-log:^2.0"
or add, (*7)
"sergeymakinen/yii2-telegram-log": "^2.0"
to the require section of your composer.json
file., (*8)
Usage
First create a new bot and obtain its token. It should look like 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11
., (*9)
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
., (*10)
Then set the following Yii 2 configuration parameters:, (*11)
'components' => [
'log' => [
'targets' => [
[
'class' => 'sergeymakinen\yii\telegramlog\Target',
'token' => '123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11',
'chatId' => 123456789,
],
],
],
],
Configuration
By default yii\log\Logger
error levels are mapped to emojis (you can tweak them in the levelEmojis
property):, (*12)
| Error level | Emoji
| --- | ---
Logger::LEVEL_ERROR
| ☠️
Logger::LEVEL_WARNING
| ⚠️
Logger::LEVEL_INFO
| ℹ️
Logger::LEVEL_TRACE
| 📝, (*13)
It's also possible to disable notifications - entirely or per logger level (look at the enableNotification
property), for example:, (*14)
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)., (*15)