Иконка ресурса

Zabbix Stats Collector 1.0.0

Нет прав для скачивания
Поддерживаемые игры
  1. CS: Source (OrangeBox)
  2. CS: GO
  3. Team Fortress 2
  4. DOD: Source
  5. L4D 1 & 2
Замена плагину отсюда, переписанная для более удобной настройки.

Отличия от плагина по ссылке выше:
  • Никакого хардкода настроек. В плагине выше, для изменения адреса сервера, куда должны уходить данные, его необходимо прописывать вместе с портом в исходнике, а после - компилировать.
  • Обновленный способ общения с Zabbix. Используется актуальная версия протокола, и вместо XML, на сервер уходит сжатый JSON.
  • Готовый шаблон для Заббикса. Не нужно ничего составлять руками/искать в Интернете. Можно взять за основу предоставленный шаблон, и состряпать свой.
  • Если у плагина не удалось доставить Заббиксу по тем или иным причинам метрики, он попытается сделать это ещё 5 раз спустя некоторое время. При этом, Заббикс, помимо самих метрик, получит точное время (секунды с эпохи Unix), когда метрики были сняты.
Плагин отправляет на Zabbix 7 основных метрик, которые берутся из результата выполнения команды stats:
Внутреннее название метрикиВидимое название метрики (в готовом шаблоне)Описание
srcds.cpuCPU utilizationПроцент нагрузки на ядро процессора
srcds.net_inNetwork (input)Кол-во байт, получаемое в секунду
srcds.net_outNetwork (output)Кол-во байт, отправляемое в секунду
srcds.uptimeUptimeВремя работы (в минутах)
srcds.changelevelsChangelevelsКол-во смен карты
srcds.fpsFPSТикрейт сервера (сколько вырабатывается кадров в секунду)
srcds.clientsClientsКол-во игроков

Названия всех метрик начинается с srcds. для удобства.
После установки и настройки, можно строить графики вида:
1570885527438.png


TODO
  • API для отправки своих метрик в Zabbix
  • Вынести кол-во повторных попыток и их частоту в конфигурационный файл
Требования
  • SourceMod v1.8 и выше.
  • Socket v3.0.1 и выше.
  • REST in Pawn v1.0.4 и выше.
Переменные
В файле конфигурации плагина (addons/sourcemod/configs/zabbix.cfg) представлено на данный момент 5 настроек:
  • push_frequency. Частота снятия и отправки метрик Zabbix.
  • address. Адрес сервера Zabbix.
  • port. Порт сервера Zabbix.
  • hostname. Имя добавленного сервера из Zabbix.
  • log_success. Логгировать ли успешные доставки метрик?
Команды
  • sm_zabbix_reload. Выполняет перезагрузку файла конфигурации Zabbix.
  • sm_zabbix_push. Команда, предназначенная скорее для отладки, что всё работает. Производит снятие метрик и отправку их в Zabbix.
Установка
Подготовка Zabbix
  1. Импортируйте представленный в архиве шаблон (.../template.xml) в Ваш установленный Zabbix.
  2. Создайте сервер в Zabbix, заполните все данные. Установленный адрес запомните или запишите. Он понадобится при настройке плагина.
  3. Подключите ранее импортированный шаблон к серверу.
  4. Проследуйте в раздел "Элементы данных" у созданного сервера, выберите все элементы из шаблона (помечены как Source Dedicated Server), и выберите действие "Массовое обновление".
  5. В самом низу страницы установите галочку напротив пункта "Разрешенные хосты", и введите в поле адрес игрового сервера.
  6. Нажмите "Обновить".

Подготовка игрового сервера
  1. Откройте файл конфигурации (.../addons/sourcemod/configs/zabbix.cfg), произведите конфигурацию. В hostname введите придуманный на шаге 2 в подготовке Zabbix имя сервера.
  2. Соберите плагин из исходного кода.
    Для сборки, Вам понадобится иметь в папке include заголовочные файлы (инклуды) от следующих расширений:
    • Socket (используется для отправки данных на сервер Zabbix)
    • REST in Pawn (используется для формирования JSON для отправки метрик)
  3. Загрузите плагин на удалённый сервер вместе с файлом конфигурации.
  4. Выполните загрузку плагина любым удобным способом.
Автор
Kruzya
Скачивания
48
Просмотры
1,920
Первый выпуск
Обновление
Оценка
5.00 звёзд 1 оценок

Другие ресурсы пользователя Kruzya

Последние обновления

  1. Добавлен забытый файл

    Добавлен забытый файл gamedata/zabbix.games.txt 🤦‍♂️ Спасибо @counter за информацию

Последние отзывы

Давно ждал, пока кто-нибудь возьмется. Спасибо.
Сверху