Программа осуществляет контроль состояния системы abills/libexec/billd
Формат запуска
billd [plugin] [parameters]
Возможности
контроль активности абонентов
контроль состояния депозита
контроль скорости
контроль синхронизации сессий с состоянием билинга, и удаление зомби сессий
контроль работы программ
существует интерфейс наращивания функционала через плагины
Установка
/etc/crontab
*/5 * * * * root /usr/abills/libexec/billd -all
Аргументы командной строки
Плагины
Плагины программы размещаются в каталоге abills/libexec/billd.plugins/. Плагины вызываются при явном указании их названия. При вызове плагинов другие операции не производятся.
Watchdog
check_programs - плагин слежения за работой программ.
Параметры
PROGRAMS='radiusd:/usr/local/etc/rc.d/radiusd start;' | Указания списка программ для слежения. [программа]:[команда запуска программы] |
---|
Пример: проверка работы радиуса на FreeBSD
/usr/abills/libexec/billd check_programs PROGRAMS=radiusd
Проверка работы радиуса на Linux (UBuntu)
/usr/abills/libexec/billd check_programs PROGRAMS="radiusd:/etc/init.d/freeradius start"
Пример проверки работы flow-capture на FreeBSD
/usr/abills/libexec/billd check_programs PROGRAMS="flow-capture:/usr/local/etc/rc.d/flow_capture start"
Пример проверки работы ipcad на DEBIAN
/usr/abills/libexec/billd check_programs PROGRAMS="ipcad:/usr/local/bin/ipcad -d"
mx80_change_profile - переключение профайла абонента в зависимости от времени суток
Параметры
NAS_IDS=1 | Номер сервера доступа. Если не указан, система делает на всех серверах типа mx80 |
---|---|
DEBUG=1 | Режим отладки |
Конфигурация
$conf{BILLD_PLUGINS}='plugin:args;plugin2:args2' | Список плагинов запускаемых после Онлайн проверки. Список плагинов указывается через точку с запятой. После названия плагина можно указать аргументы передаваемые ему через двоеточие |
---|
Пример
/usr/abills/libexec/billd mx80_change_profile
dhcp_clean_leases - чистка законченных сессий Freeradius DHCP
Пример
/usr/abills/libexec/billd dhcp_clean_leases
Плагин equipment_ping
Данный плагин пингует оборудование.
Если статус оборудования был «Отключено» и пинги начали доходить - статус меняется на «Активно». Если статус оборудования был «Включено» и пинги перестали доходить - статус меняется на «Отключено». В случае смены статуса на «Отключено» создается событие, и все администраторы подписанные на модуль Equipment получают уведомление.
Пример:
/usr/abills/libexec/billd equipment_ping
Плагин events_check
Плагин проверяет наличие и коректность бэкапов.
Если отсутствует вчерашний backup или он сформирован не до конца генерирует событие в системе.
Если включён модуль Events, администратору отобразится всплывающее окошко о проблеме с бэкапами.
Пример:
/usr/abills/libexec/billd events_check
Плагин Events Push
Плагин отправляет все текущие уведомления (какие отобразились бы в Веб-интерфейсе ) Push уведомлениями (Нужно настроить Push уведомления)
Пример:
/usr/abills/libexec/billd events_push
Отправка писем о депозите отдельно от периодических начислений
/usr/abills/libexec/periodics daily NO_USERS_WARNINGS=1 /usr/abills/libexec/periodics momnthly NO_USERS_WARNINGS=1 /usr/abills/libexec/periodics daily FN=dv_users_warning_messages
Дублирование удалённой базы
Автоматическое скачивание и наполнения локальной базы на основе удалённого дампа. Удобно использовать при создании тестового сервера и автоматического его обновления с основного. Программа скачивает дамп за текущее число с удалённого сервера и наполняет локальную базу. Можно использовать через cron для ежедневного обновления.
/usr/abills/libexec/billd sync_db
Параметры
DEBUG=1..7 | Режим отладки |
---|
Опции настройки
Удалённый хост синхронизации
$conf{SYNC_DB_HOST}='192.168.1.100:22:/usr/abills/backup/';
Команда синхронизации. Предназначена для синхронизации из нестандартных каталогов или хостов. При её использовании опции $conf{SYNC_DB_HOST} игнорируется.
$conf{SYNC_DB_DOWNLOAD}='scp asm@192.168.1.100:22:/usr/abills/backup/stats-%DATE%.sql.gz /usr/abills/backup/stats-%DATE%.sql.gz; ' .'gzip -d /usr/abills/backup/stats-%DATE%.sql.gz --name /usr/abills/backup/sync_dump.sql';
Название локально базы. По умолчанию abills
$conf{SYNC_DB_NAME}='abills_3';