Prometheus
Активация
Настройки находятся по пути: Настройки ⇒ Системные опции ⇒ Внешние интеграции, раздел "prometheus"
Для активации необходимо "Разрешить" использование функционала поставив галочку с одноименным названием.
Далее необходимо указать IP адрес либо сеть с которой будут приходить запросы.
И указать ключ который будет использоваться при запросах
Запросы
Информация о абонентах
Для получения информации о трафике всех абонентов, необходимо выполнить запрос
В результате которого будут данные в виде:
# HELP mikbillUserIN The total number of Bytes recived by client # TYPE mikbillUserIN gauge # HELP mikbillUserOUT The total number of Bytes uploaded by client # TYPE mikbillUserOUT gauge # HELP mikbillSessionTime Client session time in seconds # TYPE mikbillSessionTime counter mikbillUserIN {uid="7"} 6068174 mikbillUserOUT {uid="7"} 7102296 mikbillSessionTime {uid="7"} 427 mikbillUserIN {uid="11"} 2378560 mikbillUserOUT {uid="11"} 9643676 mikbillSessionTime {uid="11"} 438 mikbillUserIN {uid="121"} 7821647 mikbillUserOUT {uid="121"} 9489318 mikbillSessionTime {uid="121"} 522 mikbillUserIN {uid="2422"} 5217847 mikbillUserOUT {uid="2422"} 2254625 mikbillSessionTime {uid="2422"} 1 mikbillUserIN {uid="2443"} 826198 mikbillUserOUT {uid="2443"} 6247551 mikbillSessionTime {uid="2443"} 233
Для получения информации о одном абоненте, необходимо выполнить запрос
В результате которого будут данные в виде:
# HELP mikbillUserIN The total number of Bytes recived by client # TYPE mikbillUserIN gauge # HELP mikbillUserOUT The total number of Bytes uploaded by client # TYPE mikbillUserOUT gauge # HELP mikbillSessionTime Client session time in seconds # TYPE mikbillSessionTime counter mikbillUserIN {uid="7"} 6068174 mikbillUserOUT {uid="7"} 7102296 mikbillSessionTime {uid="7"} 427
Информация о тарифах
Для получения информации о трафике всех абонентов на всех тарифах, необходимо выполнить запрос
В результате которого будут данные в виде:
# HELP mikbillPacketIn The total number of Bytes recived by clients # TYPE mikbillPacketIn gauge # HELP mikbillPacketOut The total number of Bytes uploaded by clients # TYPE mikbillPacketOut gauge # HELP mikbillOnlineCount Online clients count # TYPE mikbillOnlineCount gauge mikbillPacketIn {gid="3", name="test"} 826198 mikbillPacketOut {gid="3", name="test"} 6247551 mikbillOnlineCount {gid="3", name="test"} 1 mikbillPacketIn {gid="120", name="Auto Test"} 5217847 mikbillPacketOut {gid="120", name="Auto Test"} 2254625 mikbillOnlineCount {gid="120", name="Auto Test"} 1 mikbillPacketIn {gid="139", name="IPv6"} 16268381 mikbillPacketOut {gid="139", name="IPv6"} 26235290 mikbillOnlineCount {gid="139", name="IPv6"} 3
Для получения информации о одном тарифе, необходимо выполнить запрос
В результате которого будут данные в виде:
# HELP mikbillPacketIn The total number of Bytes recived by clients # TYPE mikbillPacketIn gauge # HELP mikbillPacketOut The total number of Bytes uploaded by clients # TYPE mikbillPacketOut gauge # HELP mikbillOnlineCount Online clients count # TYPE mikbillOnlineCount gauge mikbillPacketIn {gid="139", name="IPv6"} 16268381 mikbillPacketOut {gid="139", name="IPv6"} 26235290 mikbillOnlineCount {gid="139", name="IPv6"} 3
Информация о BRAS
Для получения информации о трафике всех абонентов на всех BRAS, необходимо выполнить запрос
В результате которого будут данные в виде:
# HELP mikbillBRASIn The total number of Bytes recived by clients # TYPE mikbillBRASIn gauge # HELP mikbillBRASOut The total number of Bytes uploaded by clients # TYPE mikbillBRASOut gauge # HELP mikbillOnlineCount Online clients count # TYPE mikbillOnlineCount gauge mikbillBRASIn {id="1", name="radius check", ip="127.0.0.1"} 19107668 mikbillBRASOut {id="1", name="radius check", ip="127.0.0.1"} 18846239 mikbillOnlineCount {id="1", name="radius check", ip="127.0.0.1"} 3 mikbillBRASIn {id="2", name="junmx2", ip="192.168.8.1"} 3204758 mikbillBRASOut {id="2", name="junmx2", ip="192.168.8.1"} 15891227 mikbillOnlineCount {id="2", name="junmx2", ip="192.168.8.1"} 2
Для получения информации о одном тарифе, необходимо выполнить запрос
В результате которого будут данные в виде:
# HELP mikbillBRASIn The total number of Bytes recived by clients # TYPE mikbillBRASIn gauge # HELP mikbillBRASOut The total number of Bytes uploaded by clients # TYPE mikbillBRASOut gauge # HELP mikbillOnlineCount Online clients count # TYPE mikbillOnlineCount gauge mikbillBRASIn {id="1", name="radius check", ip="127.0.0.1"} 19107668 mikbillBRASOut {id="1", name="radius check", ip="127.0.0.1"} 18846239 mikbillOnlineCount {id="1", name="radius check", ip="127.0.0.1"} 3
Информация о онлайне
Для получения общей информации о онлайне, необходимо выполнить запрос
В результате которого будут данные в виде:
# HELP mikbillAllIn The total number of Bytes recived by clients # TYPE mikbillAllIn gauge # HELP mikbillAllOut The total number of Bytes uploaded by clients # TYPE mikbillAllOut gauge # HELP mikbillOnlineCount Online clients count # TYPE mikbillOnlineCount gauge mikbillAllIn {id="0"} 22312426 mikbillAllOut {id="0"} 34737466 mikbillOnlineCount {id="0"} 5
Информация о кол-ве абонентов со статусами
Для получения информации о количестве абонентов со статусами, необходимо выполнить запрос
В результате которого будут данные в виде:
# HELP mikbillStatusUsersCount The total number of users with status # TYPE mikbillStatusUsersCount gauge mikbillStatusUsersCount {group="Normal"} 6 mikbillStatusUsersCount {group="Nomoney"} 129 mikbillStatusUsersCount {group="Freezed"} 28 mikbillStatusUsersCount {group="Disabled"} 1182 mikbillStatusUsersCount {group="Deleted"} 1057
Для получения информации отдельно по статусам:
Нормальные
В результате которого будут данные в виде:
# HELP mikbillStatusUsersCount The total number of users with status # TYPE mikbillStatusUsersCount gauge mikbillStatusUsersCount {group="Normal"} 6
Без денег
В результате которого будут данные в виде:
# HELP mikbillStatusUsersCount The total number of users with status # TYPE mikbillStatusUsersCount gauge mikbillStatusUsersCount {group="Nomoney"} 129
Заморожен
В результате которого будут данные в виде:
# HELP mikbillStatusUsersCount The total number of users with status # TYPE mikbillStatusUsersCount gauge mikbillStatusUsersCount {group="Freezed"} 28
Отключен
В результате которого будут данные в виде:
# HELP mikbillStatusUsersCount The total number of users with status # TYPE mikbillStatusUsersCount gauge mikbillStatusUsersCount {group="Disabled"} 1182
Удален
В результате которого будут данные в виде:
# HELP mikbillStatusUsersCount The total number of users with status # TYPE mikbillStatusUsersCount gauge mikbillStatusUsersCount {group="Deleted"} 1057
Информация о статусах служб
Для получения общей информации о статусах запущенных служб, необходимо выполнить запрос
В результате которого будут данные в виде:
# HELP mikbillServiceStatus Service status # TYPE mikbillServiceStatus gauge mikbillServiceStatus {id="1", name="MySQL", description="Database"} 1 mikbillServiceStatus {id="2", name="Mikbill", description="Billing core"} 0 mikbillServiceStatus {id="3", name="Freeradius", description="AAA Server"} 1 mikbillServiceStatus {id="4", name="DHCP", description="DHCP server"} 1 mikbillServiceStatus {id="5", name="NameD", description="DNS server"} 1
Коды ошибок
- API not enable - Функционал prometheus не включен в биллинге
- Wrong API key - Неверный ключ от prometheus
- Bad request - Не верный запрос (нету параметра request)
- Unknown request - Не известный запрос (значение параметра request)
- Access denied from your IP - Доступ запрещен для Вашего IP
- No data - Нету информации для показа