Руководство по настройке мониторинга Wazzup24 в Zabbix

В прошлой статье мы рассказывали, как помогли компании организовать мониторинг, чтобы не пропускать сообщения от клиентов.

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

Настройка интеграции Wazzup24 с Zabbix позволяет организовать мониторинг каналов Wazzup, минимизировать риски и оперативно реагировать на проблемы.

В этом руководстве мы опишем процесс внедрения системы мониторинга с использованием шаблона Zabbix, который обеспечивает автоматическое обнаружение каналов и отслеживание 15 состояний с помощью триггеров состояния каналов.
Предупреждаем, руководство не самое очевидное, поэтому мы всегда оказать поддержку в этом деле.

Преимущества такого подхода:

  • Автоматическое подключение новых каналов без дополнительных настроек.
  • Поддержка WhatsApp, Avito, Telegram, Viber, ВКонтакте, Instagram и других платформ.
  • 14 триггеров для выявления различных сбоев.
  • Возможность настройки интервалов проверки.

1. Подготовка к настройке

Требования для интеграции Wazzup24 с Zabbix:

  • Zabbix Server или Proxy версии 6.0 или выше.
  • API-ключ Wazzup24 с правами доступа к информации о каналах (доступен в личном кабинете Wazzup24).
  • Подключение к API по адресу: https://api.wazzup24.com/v3/channels.

2. Импорт шаблона

  1. Скачайте файл шаблона Wazzup24.yaml
  2. В Zabbix: Configuration → Templates → Import
  3. Выберите файл и подтвердите импорт

3. Настройка макросов

Необходимые параметры:

Руководство по настройке мониторинга Wazzup24 в Zabbix

4. Архитектура шаблона

4.1 Основной элемент данных

  • Название: Get Wazzup Channels Data
  • Тип: HTTP Agent
  • Ключ: wazzup.raw_data

Параметры:yamlCopyURL: https://api.wazzup24.com/v3/channels

Метод: GET

Заголовки: Authorization: Bearer {$API_KEY}

  • Интервал: 10 минут

4.2 Правило автоматического обнаружения (LLD)

  • Название: Wazzup Channels Data
  • Ключ: wazzup.channels.discovery
  • Макросы JSONPath:
Руководство по настройке мониторинга Wazzup24 в Zabbix

5. Элементы данных каналов

5.1 Прототип элемента данных

  • Название: Название: {#NAME} | Тип: {#TRANSPORT} | Номер: {#PLAINID}
  • Ключ: wazzup.channel.state[{#CHANNELID}]
  • Препроцессинг:JSONPath: $[?(@.channelId == '{#CHANNELID}')].state.first()

Объяснение JSONPath:

  1. $ - корень JSON-документа
  2. [?(@.channelId == '...')] - фильтр по уникальному ID канала
  3. .state.first() - извлечение строкового значения состояния

6. Триггеры и состояния каналов

Полный список состояний:

  1. active - канал активен
  2. blocked - заблокирован
  3. foreignphone - QR-код отсканирован чужим аккаунтом
  4. openelsewhere - авторизация в другом аккаунте
  5. init - процесс запуска
  6. onModeration - на модерации
  7. unauthorized - не авторизован
  8. notEnoughMoney - недостаточно средств
  9. phoneUnavailable - нет связи с телефоном
  10. waitForPassword - требуется пароль 2FA
  11. qridle - ожидание сканирования QR-кода
  12. rejected - отклонен
  13. disabled - отключен
  14. Другое - неизвестный статус

expression: 'last(/Wazzup24/wazzup.channel.state[{#CHANNELID}],#1)="foreignphone"'

name: 'Название: {#NAME} | Тип: {#TRANSPORT} | Номер: {#PLAINID} QR отсканирован некорректным аккаунтом'

priority: WARNING

Это элемент типа code его надо вставить как на странице Nginx + OsTicket

7. Подключение шаблона к хосту

  1. Откройте Configuration → Hosts
  2. Выберите целевой хост
  3. В разделе Templates добавьте "Wazzup24"
  4. На старнице Macros вставьте {$API_KEY} с вашим API ключом
  5. Сохраните изменения

8. Верификация работы

  1. Перейдите в Monitoring → Latest Data
  2. Выберите ваш хост
  3. Проверьте наличие элементов:
  4. wazzup.raw_dataАвтообнаруженные каналы

9. Расширенные настройки

9.1 Настройка интервалов

  • Измените Update interval в элементе данных wazzup.raw_data для регулировки частоты опросов
  • Рекомендуемые значения: 5-15 минут

9.2 Обработка ошибок

  • Триггер "Данных нет": Срабатывает при отсутствии данных дольше {$NODATA_DURATION}
  • Неизвестный статус: Триггер "статус не определен" срабатывает, если пришли неизвестные данные.

Заключение

Настройка интеграции Wazzup24 с Zabbix обеспечивает надежный мониторинг каналов Wazzup с использованием автоматического обнаружения и триггеров состояния каналов. Это позволяет оперативно выявлять и устранять сбои, сохраняя стабильность коммуникаций и предотвращая потери бизнеса от пропущенных контактов с клиентами.

Если у вас возникли вопросы по внедрению подобной системы мониторинга для вашего бизнеса, можете написать или позвонить нам для консультации:

+7 (499) 709-73-16
ask@itforprof.com

Начать дискуссию