LINUX.ORG.RU
ФорумAdmin

Мониторинг клиентов в астериск

 


0

1

Есть желание мониторить состояние клиентов астериска. Для этого можно раз в минуту выполнять команду

asterisk -rx 'sip show peers'

Но это кажется не очень красивым решением. Можно непрерывно читать логи и искать нужные записи, но кажется что было бы естественнее если бы астериск на таких событиях сам вносил изменение например в БД.

Может ли астериск выполнять произвольный скрипт при регистрации и потере клиента?

★★★★★

https://www.zabbix.com/ru/integrations/asterisk - это если тебе просто нужно мониторить количество онлайн.

Или используй ARI - https://wiki.asterisk.org/wiki/display/AST/Asterisk+14+REST+Data+Models#Asterisk14RESTDataModels-PeerStatusChange

Конкретно то что ты хочешь лучше всего реализовать на OpenSIPs/Kamailio - там уже ведется таблица регистраций в базе (таблица location), а можно и дергать нужный скрипт на каждое событие регистрации.

Turbid ★★★★★
()
Последнее исправление: Turbid (всего исправлений: 1)
Ответ на: комментарий от Turbid

Использование AMI в данном применении, мне кажется, мало отличается от sip show peers. Хотя потенциально интересно и наверно надо попробовать.

Собственно sip show peers в принципе даже устраивает кроме того, что постоянно обращаться. И скрипт по событию был бы хорош отсутствием лишних действий. Хотя нагрузка может быть действительно и небольшая.

sin_a ★★★★★
() автор топика

asterisk -rx ‘sip show peers’

Так и делал

было бы естественнее если бы астериск на таких событиях сам вносил изменение например в БД.

А какая разница, пуллить из астериска, или из БД? По-моему наоборот, чем меньше ненужно навернуть, тем естественнее)

goingUp ★★★★★
()
Последнее исправление: goingUp (всего исправлений: 1)
Ответ на: комментарий от Turbid

Эээ.., в случае ARI астериск сам скажет про событие, опрашивать не нужно? Спасибо, это как раз то что надо.

sin_a ★★★★★
() автор топика
Ответ на: комментарий от goingUp

Чтобы не нужно было спрашивать каждую минуту у астериска: «эй, братан, как сам-то, кто жив а то уже издох немножко». А сам он не будет каждую минуту а только иногда один раз скажет «вася издох»…

sin_a ★★★★★
() автор топика
Ответ на: комментарий от sin_a

а только иногда один раз скажет «вася издох»

А как это в заббикс заносить? Можно через trapper, утилитой zabbix_sender, пушить, но по-моему там все равно раз в 30 сек нужно будет данные заносить, потому что так работает заббикс. Получаются те же яйца. Или я ошибаюсь?

goingUp ★★★★★
()
Последнее исправление: goingUp (всего исправлений: 1)
Ответ на: комментарий от goingUp

Про заббикс не скажу, пока задача видеть состояние и заодно иметь историю. Хотя возможно туда и придёт, но там не всё так однозначно. В любом случае, если можно не теребить попусту то стоит попытаться этого избежать.

sin_a ★★★★★
() автор топика
Ответ на: комментарий от goingUp

Для мониторинга можно сделать прослойку, которую и будет читать. Хотя, кстати, это интересный вопрос, как мониторить отдельные события. Вряд ли это уникальная ситуация.

sin_a ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.