Ad Widget

Collapse

Мониторинг наличия файлов

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • aleksey.ishchenko
    Senior Member
    • May 2020
    • 187

    #1

    Мониторинг наличия файлов

    Нужно мониторить наличие файлов логов с расширением *.trn и если новых файлов в течение часа ет то алерт
    Сделал два элемента данных
    vfs.file.exists["{$TRN}"]
    vfs.dir.count["E:\Backup","(?i)^.+\.trn$",,file,,0,,,,1h]
    Но он мне пишет, что файл бэкапа не найдет
  • Kos
    Senior Member
    Zabbix Certified SpecialistZabbix Certified Professional
    • Aug 2015
    • 3404

    #2
    Метрика vfs.file.exists умеет проверять наличие только файла с конкретным, заранее известным именем. Она не работает с масками, регулярными выражениями и т.п.
    Тем более трудно прокомментировать, что вы у себя используете в качестве параметра пользовательский макрос, но скрываете значение этого макроса. Впрочем, в данном случае (ввиду вышесказанного) это и не важно: данная метрика для этой задачи по-любому не подходит.

    Метрика vfs.dir.count выглядит вполне адекватной.
    Меня немного смущает только последний параметр - вы считаете количество файлов, у которых возраст меньше часа (т.е. файлы возрастом час и более не считаются). Возможно, что так и надо; но для этого нужно видеть, с какой частотой идёт опрос и каково условие триггерного выражения. Хотя, вероятнее всего, всё ОК и надо просто сравнивать с нулём: если таких файлов нет - значит, либо они не были созданы, либо их кто-то уже удалил/переместил/переименовал.

    Comment

    • aleksey.ishchenko
      Senior Member
      • May 2020
      • 187

      #3
      Триггер vfs.dir.count["E:\Backup","(?i)^.+\.trn$",,file,,0,,,,1h].last()}>3600
      Мне надо, триггер если файл trn не менялся больше часа то алерт, интревал опроса час​

      Comment

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

        #4
        Originally posted by aleksey.ishchenko
        Триггер vfs.dir.count["E:\Backup","(?i)^.+\.trn$",,file,,0,,,,1h].last()}>3600
        Мне надо, триггер если файл trn не менялся больше часа то алерт, интревал опроса час​
        Во-первых, данное триггерное выражение имеет следующий смысл: "если количество файлов по данной маске в данной директории и возрастом меньше часа превышает пороговое значение 3600, то генерировать событие ПРОБЛЕМА". Это точно то условие, какое вы хотите? Почему вы количество файлов в папке сравниваете с числом 3600?

        Во-вторых, под эту маску попадает не один файл, а все файлы с расширением ".TRN". Который из них должен не меняться больше часа? Хотя бы один или все? Другими словами - самый старый или самый новый?​

        Comment

        • aleksey.ishchenko
          Senior Member
          • May 2020
          • 187

          #5
          Самый новый файл с раcришением trn
          Last edited by aleksey.ishchenko; 21-03-2023, 11:07.

          Comment

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

            #6
            Originally posted by aleksey.ishchenko
            Самый новый файл с раcришением trn
            Чем этот вариант не устраивает?
            надо просто сравнивать с нулём: если таких файлов нет - значит, либо они не были созданы, либо их кто-то уже удалил/переместил/переименовал.

            Comment

            • aleksey.ishchenko
              Senior Member
              • May 2020
              • 187

              #7
              Originally posted by Kos
              Чем этот вариант не устраивает?
              Файлы создаются каждый час, если дата создания последнего файла больше часа, то алерт. Файлы не перемещаются из каталога.

              Comment

              Working...