Системами мониторинга типа Zabbix искушённых пользователей не удивишь. Однако в ритейле они не частые гостьи, а если используются, то всё больше для контроля серверов. Мы же пошли дальше и применяем их для мониторинга кассового ПО и оборудования.



Почему системы мониторинга редко встречаются в ритейле


Тут всё совершенно прозрачно: ритейлеры и сервисные компании редко пользуются системами мониторинга, потому что сложно оценить их экономическую эффективность. С внедрением в бизнес-процессы всё просто — X денег и X усилий. А вот посчитать, сколько они сэкономили ритейлеру в дальнейшем тяжелее.

Сервисные подрядчики обычно не внедряют системы мониторинга ещё и потому, чтобы не уменьшить значимость своей работы. Это логично: Zabbix позволяет выявить проблему до того, как её увидел клиент. С одной стороны, это повышает качество оказываемых услуг. С другой, у клиента иногда складывается ошибочное впечатление, что его бизнес-процессы прекрасно налажены и работают без какой-либо сторонней помощи. Но это можно решить, вовремя предоставляя отчётность.

Однако даже у тех ритейлеров, которые согласны на внедрение системы мониторинга, обычно всё заканчивается контролем серверов, офисных компьютеров, бесперебойников, активного сетевого оборудования. Это делаем и мы:

  • от серверов получаем данные об утилизации процессоров, работоспособности вентиляторов, жёстких дисков, памяти, температуры процессоров и материнских плат;

  • от бесперебойников — статусы, уровень заряда, информацию о том, сколько времени они проработают в случае отключения электричества;

  • от сетевого оборудования — трафик на портах, утилизацию ресурсов.

По части полученной информации составляются автоматические заявки в Service Desk. Ряд других данных помогает нам при расследовании инцидентов. Классический пример: пользователь жалуется, что его компьютер медленно работает. Без системы мониторинга это отследить тяжело — либо, когда подключится инженер всё уже будет в порядке, либо у сотрудника сложилось субъективное впечатление (его рабочий слабенький ПК объективно работает медленнее навороченного игрового компьютера, который стоит дома). Поэтому мы изучаем ретроспективу — графики за то время, когда человек наблюдал проблему.

Но всё вышесказанное — банальность, ничего нового. Так уж получилось, что мы пошли дальше и с помощью Zabbix стали контролировать работоспособность кассового программного обеспечения и кассового же оборудования. Делаем это для крупных международных ритейлеров, широко представленных на российском рынке как в food, так и в non-food сегментах. Также нашу систему мониторинга приобрели некоторые региональные сетевики, которые теперь самостоятельно могут контролировать работоспособность своих бизнес-процессов.

Почему мы стали этим заниматься


Говоря откровенно, система мониторинга внедрялась в «Пилоте» спонтанно, без какого-либо проекта и по частям. Если бы решение об этом шло сверху, возможно, мы пошли бы по пути других сервисных подрядчиков и не стали бы заморачиваться. Но у нас инициаторами внедрения стали линейные сотрудники — инженеры. Сталкиваясь с той или иной поломкой кассового оборудования или глюка софта, они искали, как можно было бы в дальнейшем её предотвратить. И пришли к идее системы мониторинга.

С её помощью мы получаем три варианта решения проблем:

  • превентивно — устраняем проблему до того, как она случилась. Например, при мониторинге жёсткого диска видим, что место на нём сократилось до критического уровня. И принимаем в связи с этим меры;

  • постфактум — решаем проблему после того, как она случилась. Например, вышел из строя вентилятор на процессоре. Процессор пока греется, но работает. Рано или поздно он, конечно, выйдет из строя, но пока у нас есть возможность заменить вентилятор. То есть пользователь инцидент пока не заметил, но он уже есть. С его точки мы решаем проблему проактивно, но с точки зрения оборудования — постфактум;

  • аналитически — получаем большое количество данных в ретроспективе для разбора инцидентов.




Конечно, наша система мониторинга затрагивает далеко не всё кассовое оборудование потому, что не всегда в этом есть смысл. Возьмём сканер штрихкодов. Они либо работает, либо нет. И во втором случае сотрудники магазина гораздо быстрее сообщат нам о проблеме, чем система мониторинга. Поэтому мы сконцентрировались на контроле POS-терминалов и контрольно-кассовой техники (ККТ).

Мониторинг работоспособности ККТ


ККТ отдаёт через драйвер достаточно информации, которая позволяет судить об её работоспособности. Например:

  • Различные инвентаризационные данные — версии железа, прошивок, драйверов, серийные номера. В общем случае состав оборудования на сервисе фиксируется в приложениях к договорам и хранится в CMDB, однако заказчик волен перемещать и заменять оборудование, как ему вздумается. Конечно, он не всегда вспоминает, что было бы неплохо уведомить об этом сервисную компанию. Тут и приходит на помощь система мониторинга, которая отслеживает изменение конфигурации оборудования. Мы написали интеграционный модуль, который корректирует CMDB согласно данным inventory из Zabbix. Кроме отслеживания реальной конфигурации оборудования на объектах обслужив��ния он, вкупе с функционалом автообнаружения системы мониторинга, капитально сокращает время на стартовую инвентаризацию нового клиента, если такая работа предусмотрена договором.


Кейс из жизни: многие, наверное, помнят случай с багом в прошивке одного из производителей ККТ в декабре 2017 года? Как только появились первые сведения о проблеме, мы настроили триггер в Zabbix, сигнализирующий о содержащей баг версии прошивке, и получили список ККТ, которой необходимо срочно заняться.

  • Код состояния ККТ — отличный параметр, позволяющий отследить практически любую неисправность, начиная от неправильно выставленного времени или перегрева головки принтера до присутствия неотправленных фискальных данных на фискальном накопителе.

Контроль за кассовым ПО


В рамках контроля кассовой программы мы мониторим различные признаки:

  • работоспособность служб — включено ПО или нет, открывает ли какие-то сетевые порты или ждёт подключения;

  • записи в логах — обычно ПО пишет в журналы о возникших проблемах, формирует свод ошибок. Как косвенный признак, если логи меняются, то ПО работает, если новых записей в них нет — значит нужно создавать заявку;

  • собственно, сами записи в логах — если встречается сообщение об ошибке, срабатывает триггер. После обработки записи передаются в ELK: Logstash у нас выгребает логи через API Zabbix;

  • результаты работы интеграционного ПО, которое закачивает, преобразовывает и отправляет данные (например, передаёт информацию в ЕГАИС, ОФД, получает номенклатуру товаров). Так, недавно неправильно сформированный пакет данных с номенклатурой вывел из строя программное обеспечение терминалов самооплаты, парализовав их работу в одном из магазинов нашего клиента. Благодаря системе мониторинга нам удалось вовремя локализовать проблему;

  • версии ПО, драйверов — иногда возникают ситуации, когда, например, версии двух программ не совместимы, но для работы кассового софта нужно, чтобы они взаимодействовали;

  • базы данных — отслеживаем работоспособность сервисов, доступность сетевых портов, количество баз данных, их версии и количество выключенных баз данных;

  • внешние сервисы (например, ЕГАИС, с которым мы взаимодействуем через IP сети в автоматическом режиме).




Проблемы, которые чаще всего поступают в систему мониторинга


Чаще всего Zabbix сигнализирует нам о проблемах сети: недоступности устройств, слишком долгом времени ответа. Далее идут сложности с утилизацией ресурсов: под кассы обычно используются маломощные ПК. Третьей по частоте возникновения проблемой является валидность данных из внешних систем.

Довольно часто приходят сообщения о некорректности локального времени. Кассовые ПК обычно не вводят в AD и службу ntp там приходится настраивать отдельно, что иногда забывается. А неправильное время на кассе чревато крупными проблемами для магазина: например, продажей алкоголя тогда, когда это запрещено, что может привести к штрафу или потере лицензии.

Борьба с фродом и простоем оборудования


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

Сейчас от нашей системы мониторинга поступает от 15 до 25% заявок. Это достаточно небольшое количество, но к концу этого года хотим довести его до 50% для клиентов, которые подписали с нами договоры о сервисном обслуживании.