Ad Widget

Collapse

Работа функции count() в триггере

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Victor Sklyarov
    Senior Member
    • Apr 2016
    • 184

    #1

    Работа функции count() в триггере

    Не могу понять, это я не понимаю описания функции или это баг. Ситуация - нет данных 12 часов, перед этим метрики были, метрика собирается раз в час.
    count(//метрика,#12) =12 даёт значение TRUE
    count(//метрика,#12,"like","pattern") =12 даёт значение FALSE
    count(//метрика,12h) =12 даёт значение FALSE
  • Semiadmin
    Senior Member
    • Oct 2014
    • 1625

    #2
    видимо, не все из последних 12 значений содержат pattern

    Comment

    • Victor Sklyarov
      Senior Member
      • Apr 2016
      • 184

      #3
      Нет, ситуация такая -12 последних значений просто отсутствуют. Соответственно count() не должен насчитать ничего. Вторая и третья строка -правильная работа. А вот первая - непонятно как насчитывает 12 значений. Такое впечатление, что просто идёт по истории, пропускает все периоды, где нет данных (а их нет 12 отсчётов), находит группу в 12 и более и выставляет TRUE

      Comment

      • Semiadmin
        Senior Member
        • Oct 2014
        • 1625

        #4
        Значит, двенадцатью последними значениями являются те, что есть в истории. Так это и работает со знаком #, без привязки ко времени.

        Comment

        • Hamardaban
          Senior Member
          Zabbix Certified SpecialistZabbix Certified Professional
          • May 2019
          • 2713

          #5
          Именно! count работает по истории.
          «12 последних значений просто отсутствуют» - означает ровно то, что их в «истории» нет.
          А #12 обработает те 12 которые есть.​

          Comment

          • Alex_UUU
            Senior Member
            • Dec 2018
            • 541

            #6
            Врод ене только count так работает. И обратите внимание, ко7гда в предобрабюотке стоит "не сохранять одинаковые значения" то в триггерах можно работать только с #1, т.к. #2 даже с ластом выдаст второе значение с конца, которое в истории, а не предыдущее полученное.

            Comment

            Working...