Назначение
Диагностика интернет-соединения пользователей через ping.
Функционал::
- Получает список онлайн-пользователей (
Sessions->online). - Проверяет возможность ping (
ping_access_check). - Запускает многопоточный ping для пользователей (если разрешено в конфигурации).
- Сохраняет результаты ping в базу данных и генерирует события при критических потерях пакетов.:
- Формирует команду ping с параметрами (количество пакетов, размер, интервал).
- Обрабатывает результаты ping (потери пакетов, среднее время).
- Проверяет, можно ли ping-овать пользователя (на основе предыдущих попыток).
Запуск:
# Ping по IP /usr/abills/libexec/billd ping_user IP=192.168.1.100 DEBUG=3 # Ping по логину /usr/abills/libexec/billd ping_user LOGIN=user1 DEBUG=2 # Ping без проверки списка 'no_ping' /usr/abills/libexec/billd ping_user IP=192.168.1.100 NO_CHECK=1 DEBUG=4
Сценарии работы:
Проверяет доступность пользователя через
ping_comand_builder.Использует многопоточность при большом количестве пользователей.
Логирует результаты и создает события при критических потерях пакетов.
Описания параметров конфигурации (config.pl) или модуля Config
| Параметр | Пример | Описание |
|---|---|---|
| THREADS | 5 | Количество потоков |
| PING_PERIODIC | 60 | Интервал ping (сек) |
| CRITICAL_RATE_LOSSES | 90 | Критический процент потерь |
| PACKET_NUM | 10 | Количество пакетов |
| PACKET_SIZE | 1000 | Размер пакета (байт) |