Демка: http://REMOVED/
ВНИМАНИЕ! Требуется астра версии 5.62-test от 12.11.2016 или старше, с добавлением параметра "total" в ссылку на мониторнг! На версиях младше в мониторинг не попадут одиночные cc и pes ошибки. Баг в скрипте monitor.php, и исправляться не будет. Если есть желающие исправить, пишите для получения подробностей.
Основные возможности:
- Автоматическое добавление каналов и адаптеров с их параметрами (как в мониторинге для 3 версии).
- Информация о канале (параметры входов и выходов, битрейт, ошибки (СС/PES), статус (работает/не работает), время проблемы).
- Графики уровня сигнала dvb.
- Отправка уведомлений при проблемах с каналами (pushbullet, telegram).
- Отправка графиков уровней сигналов и ошибок с dvb в telegram (при постоянной проблеме более 2-х минут).
- Проигрывание канала в браузере (через vlc plugin или плейлист).
- Кастомизируемые дополнительные поля (удобно для учета и сортировки).
- Переход на страницу настройки канала в астре из мониторинга (требуется указание маски на вкладке с астрами, для разных версий астры).
- Перезапуск астры и каналов (требуется указание логина и пароля на вкладке с астрами, если включена авторизация в астре)
- Боковое меню по адресу menu.html, мониторинг по адресу index.php
Установка:
- Скачать мониторинг по ссылке, или через git:
#!bash
git clone https://bitbucket.org/pasha_49/astra_monitor
- Импортировать структуру базы из "sql/astra.sql"
mysql -uuser -ppass
create database astra DEFAULT CHARACTER SET UTF8;
mysql -uuser -ppass astra < /var/www/astra_monitor/sql/astra.sql
- Установить php5-curl (для уведомлений или перезапуска астры)
- Заполнить параметры подключения к базе, в файле "includes/config.php" или скопировать нужные в "conf.php"
- Для обновления можно использовать git (и проверяйте файлы изменений базы в папке sql)
#!bash
git pull origin
Для автоматического добавления каналов в мониторинг, необходимо в веб интерфейсе астры:
- Изменить id канала на целое число. Число должно быть уникальным для канала. (в настройках канала, в "Advanced Options")
- Изменить id dvb адаптера на целое число. Число должно быть уникальным для адаптера. (в настройках адаптера, в "Advanced Options")
- Указать в настройках астры адрес до monitor.php, например "http://www.example.com/monitor_dir/monitor.php#total". (во вкладке "Settings->General->Monitoring"). Если астра младше 5.62-test от 12.11.2016, то при добавлении "total" будет большая нагрузка на сервер мониторинга и базу.
- *****(для астры 5.60+) Добавить категорию "monitor", и в эту категорию добавить группу с произвольным названием процесса астры. Например "ntv_12345". Данное название будет отправляться на мониторинг как название экземпляра астры. (во вкладке "Settings->Groups")
- *****(для астры 5.60+) Добавить канал в ранее созданную категорию и группу. (во вкладке "Settings->Groups" ИЛИ в настройках канала, в "Advanced Options")
*Если не создавать категорию и группу, то все каналы будут попадать в один экземпляр астры "autoscan", который добавится единственный раз при первом запуске астры. Далее каналы можно переназначать на другие экземпляры астр.
Конфигурация каналов отправляется только при запуске/перезапуске астры. Во время работы астры отправляется статистика по каналам.
При первом запуске астры в мониторинге создаются названия экземпляров астры без каналов. Каналы привязываются к временному экземпляру "autoscan" с id=0.
При втором запуске астры каналы привязываются к правильным названиям экземпляров астры. При следующих перезапусках конфигурация будет обновлться.
Если каналы не появляются в мониторинге, то не выполнено какой-то из обязательных условий, описаных выше.
Каналы и экземпляры астры так же можно добавлять вручную, но без входов и выходов.
Для рисования графиков:
- Установить пакет "rrdtool"
- Создать каталог "/var/rrd"
- В скрипте (переименовать) rrdtool/config.sh прописать параметры подключения к базе и путь в "graph_path" до папки с графиками в папке с мониторингом.
- Добавить в cron запуск скрипта "rrd_read_all.sh" с периодичностью примерно 1-10 минут.
Для перезагрузки определенного канала:
- Прописать адрес к веб упралению астры на вкладке с астрами.
- Прописать логин и пароль для API на вкладке с астрами, если включена авторизация в астре.
- Создать на сервере с астрой в папке /etc/astra/mod файл "api.lua" со следующим содержимым:
control_api["reload-stream"] = function(server, client, request)
kill_stream(channel_list_ID[request.id])
local _, sc = get_item_by_id(config_data.make_stream, request.id)
make_stream(sc)
control_api_response(server, client, { ["reload-stream"] = "ok" })
end
Для уведомлений:
- Указать в конфиге мониторинга параметры для уведомлений.
- Проверить, что бы в настройках канала в мониторинге были включены "Уведомления". По умолчанию включены.
- Pushbullet: Установить php5-curl или curl.
- Telegram: Как установить telepot и получить token бота - http://telepot.readthedocs.io/en/latest/. Настройки в (переименовать) includes/telegam/config.py
Если нужно только боковое меню, то используйте "menu.html" и папку "scripts". Если используете меню вместе с мониторингом, то рекомендуется переименовать его для обновлений.
ToDo:
- Интеграция с http://scansat.info/
- Отображение нескольких входов и выходов. Выпадающий список.
- Вести лог проблем. Отображать на главной колчество проблем за сутки.







