Ad Widget

Collapse

Задержка записи в History. Что есть в ValueCache

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Alex_UUU
    Senior Member
    • Dec 2018
    • 541

    #1

    Задержка записи в History. Что есть в ValueCache

    Заббикс 5.2. Мускуль. А вот History - ClickHouse на другом сервере.

    Может как-то перекликается с Не могу найти причину очереди от прокси. - ZABBIX Forums​, но не факт. Раньше что-то похожее было, но решение не нашли.

    Начал замечать задержку в появлении данных в таблице Хистори. При этом идет неправильное срабатывание триггеров.

    Настраиваем новый хост. Там есть ЭД, который каждый день выдает Ок. И есть триггер, которые str(Ok)=0 на сработку.
    Подключаем хост.
    Сразу срабатывает триггер, что ОК не Ок. На экране "проблемы! видим сработку, а в "оперативных данных" - "Неизвестно". Смотрим в последних данных - пусто. Смотрим в БД - пусто.
    Через некоторое время значение появляется в хистори, в последних данных. А в проблемах наблюдаем когнитивный диссонанс: Сработавший триггер, что ОК не Ок и то, что ОК - Ок.. Т.к. следующие данные придут через день - триггер не закроется сутки.

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

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

    ЗЫ. Пару дней убил на один ЭД. ЛОг, который наполняется с неистовой силой (более 3000 строк в секунду). Поставил ЭД лог.каунт каждую секунду опрос 1000 записей. Добавляю в лог нужную фразу. Жду. МИнут через 10-20 появляется в последних данных.
    Значит, думаю, надо ставить другой анализатор логов.
    Но взял и поставил на этот ЭД тригге. И что же видим? Как только в лога добавил нужную фразу, в секунду срабатывает триггер. А вот в хистори данные появляются когда-то потом...

    ЗЗЫ. Валуекеш занят процентов на 70.

  • Vandoyn
    Junior Member
    • Jan 2014
    • 8

    #2
    Originally posted by Alex_UUU
    Заббикс 5.2. Мускуль. А вот History - ClickHouse .
    Может задержка именно записи в Clickhouse.
    Расскажите как прикрутили Clickhouse к Заббиксу?​

    Comment

    • Alex_UUU
      Senior Member
      • Dec 2018
      • 541

      #3
      Скорее всего именно при записи в кликхауз, т.к. пишется якобы блоками по 4000 записей или что-то около этого.
      ПРикручивал не я, так что могут быть подводные камни. Но в конфиге заббикс сервера:
      HistoryStorageType=clickhouse
      HistoryStorageTypes=uint,dbl,str,text
      HistoryStorageClickHouseHost=
      HistoryStorageClickHousePort=
      HistoryStorageClickHouseDBName=

      История не удаляется.

      Comment

      • Vandoyn
        Junior Member
        • Jan 2014
        • 8

        #4
        Похоже какая то патченная версия, из коробки до сих пор не сделали поддержку Кликхауза (
        Покажите полностью выражение триггера, запись истории не должна влиять на вычисления триггеров.​

        Comment

        • Alex_UUU
          Senior Member
          • Dec 2018
          • 541

          #5
          Триггер элементарный
          (Элемент данных).str(Ok)=0
          Тип ЭД - текст. активные проверки, интервал опроса сутки

          Что происходит: ставим сервер на мониторинг. Агент отсылает значение ЭД=Ok
          Сервер принимает, видит, что на ЭД навешан триггер и делает вычисление. И вот тут (как мне кажется) он не находит значение в ValueCache, лезет в БД. Но туда оно еще не записалось. Соответственно срабатывает.
          При этом на экране "ПРоблемы" в последних данных написано "Неизвестно".
          На экране "Последние данные" данных тоже нет. ЭД - активный.
          МИнут через 10-15 данные появляются в БД и на всех экранах. Триггер - сработавший, т.к. команды на повторные вычисления - нет.
          Через сутки, если придет еще раз Ok, он выключится. Что будет если придет не Ok - сказать не могу (не помню), Для ЭД, у которых опрос месяц, если приходит Ок, а ранее было Error, то триггер срабатывает по Error. (для такого ЭД мне пришлось сделать получение данных каждый месяц в течении получаса :-(

          Зы. скрины и текстовку скопировать не могу, т.к. из-за проверки CloudFlare не отовсюду могу на форум зайти (бесконечная проверка).

          Comment

          • Vandoyn
            Junior Member
            • Jan 2014
            • 8

            #6
            Триггеры пересчитываются при поступлении данных, возможно проблема в ЭД
            Ну и ничего страшного нет в более частом сборе данных.
            Раз в месяц такое, а вдруг не дойдет и еще через месяц о проблеме узнать?

            Comment

            • Kos
              Senior Member
              Zabbix Certified SpecialistZabbix Certified Professional
              • Aug 2015
              • 3404

              #7
              Originally posted by Alex_UUU
              И вот тут (как мне кажется) он не находит значение в ValueCache, лезет в БД. Но туда оно еще не записалось.
              А есть ли какие-то объективные причины использовать неподдерживаемую версию 5.2?
              Мне смутно припоминается, что в последних версиях были какие-то исправления/улучшения/оптимизации в плане работы с value-cache-ем (хотя могу и ошибаться).
              И если уж использовать версию 5.2, то обновить её до последнего релиза (5.2.7) - там была реализована одна из оптимизаций (ссылка)​.

              Comment

              • Alex_UUU
                Senior Member
                • Dec 2018
                • 541

                #8
                2 Kos​ : если быть точнее, то 5.2.4
                2 Vandoyn​ : Ну, например, нужный файл появляется раз в месяц м надо смотреть, есть или нет.

                Comment

                Working...