Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

EXPORTER_SCRAPE_FAIL IP-Телефония и СКУД

Мониторинг Asterisk в Prometheus и Grafana с помощью asterisk_exporter

Обновлено: 24.08.2026 · Официальная документация ↗
  • Отсутствие оперативной информации о перегрузке SIP-транков и исчерпании лицензионных лимитов каналов.
  • Внезапные отвалы регистраций транков операторов связи остаются незамеченными администраторами.
  • Ошибки скрейпинга метрик Prometheus: dial tcp 127.0.0.1:9255: connect: connection refused.
  • Высокая задержка выполнения запросов AMI при сборе статистики очередей операторов.

1. Архитектура мониторинга Asterisk через Prometheus

Утилита asterisk_exporter подключается к локальному интерфейсу Asterisk Manager Interface (AMI) по TCP-порту 5038, опрашивает состояние подсистем (Channels, PJSIP endpoints, Queues, Core) и отдает метрики в формате Prometheus по HTTP-эндпоинту :9255/metrics.

2. Создание системного пользователя AMI для экспортера

В файле /etc/asterisk/manager.conf добавьте:

[prometheus_exporter]
secret = StrongExporterPass2025!
deny = 0.0.0.0/0.0.0.0
permit = 127.0.0.1/255.255.255.255
read = system,call,log,verbose,command,agent,user,config,reporting,cdr
write = none

Примените настройки: asterisk -rx "manager reload".

3. Установка и запуск asterisk_exporter как systemd сервиса

# Загрузка актуального бинарного релиза
wget https://github.com/alphacep/asterisk_exporter/releases/download/v0.3.0/asterisk_exporter-0.3.0.linux-amd64.tar.gz
tar -xvf asterisk_exporter-0.3.0.linux-amd64.tar.gz
mv asterisk_exporter /usr/local/bin/
useradd -rs /bin/false prometheus_exporter

Создайте unit-файл /etc/systemd/system/asterisk_exporter.service:

[Unit]
Description=Asterisk Prometheus Exporter
After=network.target asterisk.service

[Service]
Type=simple
User=prometheus_exporter
ExecStart=/usr/local/bin/asterisk_exporter \
  -asterisk.ami-user=prometheus_exporter \
  -asterisk.ami-secret=StrongExporterPass2025! \
  -asterisk.ami-addr=127.0.0.1:5038 \
  -telemetry.address=:9255
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable --now asterisk_exporter
systemctl status asterisk_exporter

4. Конфигурация сбора метрик в prometheus.yml

scrape_configs:
  - job_name: 'asterisk'
    static_configs:
      - targets: ['192.168.10.10:9255']
        labels:
          instance: 'pbx-production-01'

5. Основные метрики Prometheus для алертинга

  • asterisk_up: Доступность ядра Asterisk (1 = работает, 0 = упал).
  • asterisk_channels_active: Количество активных одновременных звонков.
  • asterisk_pjsip_endpoints_online: Число зарегистрированных абонентов онлайн.
  • asterisk_queue_callers: Количество клиентов, ожидающих в очереди колл-центра.
💡 Практика специалистов: Никогда не давайте учетной записи экспортера права write в manager.conf. Экспортер должен функционировать исключительно в режиме чтения (read-only) для исключения рисков безопасности.

Частые вопросы (FAQ)

Как настроить Alertmanager на событие падения транка оператора связи?

Создайте правило: expr: asterisk_pjsip_endpoint_state{endpoint=~'trunk-.*'} != 1, for: 1m, labels: severity: critical, с аннотацией 'SIP-транк оператора недоступен'.

Создает ли asterisk_exporter высокую нагрузку на АТС?

При стандартном интервале скрейпинга (15–30 секунд) нагрузка на AMI минимальна. Однако, если очередей более 100, рекомендуется отключить сбор детальных метрик по каждому участнику очереди.

Где взять готовые дашборды Grafana для визуализации метрик?

Используйте популярный шаблон Grafana Dashboard ID: 14757 или 13427 (Asterisk Overview), импортировав его в меню Dashboards -> Import.

Как проверить отдачу метрик экспортером вручную?

Выполните HTTP-запрос через curl: curl -s http://127.0.0.1:9255/metrics | grep asterisk_.

Полезные материалы
Рекомендуем