Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/proklung/bitrix.error.notifier.module
Модуль для Битрикса, оповещающий о фатальных ошибках на проекте через Symfony Notifier
https://github.com/proklung/bitrix.error.notifier.module
bitrix bitrix-module bitrix-symfony notifier php7
Last synced: 10 days ago
JSON representation
Модуль для Битрикса, оповещающий о фатальных ошибках на проекте через Symfony Notifier
- Host: GitHub
- URL: https://github.com/proklung/bitrix.error.notifier.module
- Owner: ProklUng
- Created: 2021-08-01T18:47:12.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2021-08-03T09:58:06.000Z (over 3 years ago)
- Last Synced: 2024-11-06T15:55:29.351Z (about 2 months ago)
- Topics: bitrix, bitrix-module, bitrix-symfony, notifier, php7
- Language: PHP
- Homepage:
- Size: 13.7 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.MD
Awesome Lists containing this project
README
# Модуль для Битрикса, оповещающий о фатальных ошибках на проекте через Symfony Notifier
Пример практического применения нотификатора Symfony в проектах на Битриксе.
Отправляет сообщения о фатальных ошибках на проекте в каналы согласно конфигурации корневого [модуля](https://github.com/ProklUng/bitrix.notifier.module): sms, почта,
чаты (включая Телеграм).## ВАЖНО
Этот модуль зависит от установки, активации и настройки модуля [proklung.notifier](https://github.com/ProklUng/bitrix.notifier.module). Без него
работать не будет (но и ругаться тоже).## Установка
composer.json основного проекта:
```json
"extra": {
"installer-paths": {
"./bitrix/modules/{$name}/": ["type:bitrix-d7-module", "type:bitrix-module"],
"./bitrix/components/{$name}/": ["type:bitrix-d7-component", "type:bitrix-component"],
"./bitrix/templates/{$name}/": ["type:bitrix-d7-template", "type:bitrix-theme"]
}
}
```И:
```json
"repositories": [
{
"type": "git",
"url": "https://github.com/proklung/bitrix.error.notifier.module"
}
]
``````bash
$ composer require proklung/bitrix-error-notifier-module
```Установите модуль `bitrix.error.notifier` в административном интерфейсе сайта `bitrix/admin/partner_modules.php`
`init.php`:
```php
use Bitrix\Main\Loader;Loader::includeModule('proklung.notifier');
```
### Использование`/bitrix/.settings.php`:
```php
use Symfony\Component\Notifier\Notification\Notification;return [
'exception_handling' =>
array(
'value' =>
array(
'debug' => env('DEBUG', false),
'handled_errors_types' => 4437,
'exception_errors_types' => 4437,
'ignore_silence' => false,
'assertion_throws_exception' => true,
'assertion_error_type' => 256,
'log' => array (
'class_name' => \Proklung\Error\Notifier\ErrorHandler::class,
'required_file' => 'bitrix/modules/proklung.error.notifier/lib/ErrorHandler.php',
'settings' => array (
'types' => [
\Bitrix\Main\Diag\ExceptionHandlerLog::UNCAUGHT_EXCEPTION,
\Bitrix\Main\Diag\ExceptionHandlerLog::IGNORED_ERROR,
\Bitrix\Main\Diag\ExceptionHandlerLog::FATAL,
],
// Получатель почты; перебивает параметры родительского модуля
'recipient' => '[email protected]',
// Или какой-нибудь иной способ различения dev/prod среды
// По умолчанию - dev
'env' => env('DEBUG', false) ? 'dev' : 'prod',
// В каком окружении работать. По умолчанию - prod.
'allowed_env' => ['dev', 'prod'],
// Уровень важности согласно channel_policy (см. документацию к модулю proklung.notifier)
// По умолчанию - urgent
'importancy' => Notification::IMPORTANCE_URGENT,
),
),
),
'readonly' => false,
),
];
```
### Нюансы1) Сообщение об ошибке рассылается всего один раз (иначе чревато флудом). Каждые сутки таблица с информацией
об отправленных уведомлениях очищается посредством агента. Процесс начинается по новой.