Ad Widget

Collapse

Вычисляемый элемент данных на основе элементов данных, собранных через агента SSH.

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Алексей Чернышенко
    Junior Member
    • Jul 2021
    • 19

    #1

    Вычисляемый элемент данных на основе элементов данных, собранных через агента SSH.

    Коллеги, всех приветствую!

    Вычисляемые элементы данных для обычных метрик, которые собираются через SNMP, создаются и работают без проблем.
    Вопрос по созданию вычисляемого элемента данных на основе элементов, собранных через SSH.

    Допустим, есть успешно собираемые через SSH-агенты метрики:
    Code:
    ssh.run[appsdata.used,,{$MPC_SSH_PORT},]
    ssh.run[appsdata.total,,{$MPC_SSH_PORT},]
    Теперь я хочу создать вычисляемый элемент данных appsdata.pused на основе вышеуказанных элементов данных c формулой:
    Code:
    last(appsdata.used)/last(appsdata.total)
    Однако, Zabbix выдает ошибку:
    Code:
    Cannot evaluate function "last()": item "host-001:appsdata.used" does not exist.
    Как праивльно указать элемент данных в формуле, чтобы его можно было использовать?
  • johndoe2374
    Member
    • Aug 2021
    • 80

    #2
    Приветствую. Думаю, что у вас элементы данных будут называться ssh.run, а не appsdata.used/total. А так, можно в конструкторе выражений триггеров их выбрать и потом скопировать в правильном синтаксисе.

    Comment


    • Алексей Чернышенко
      Алексей Чернышенко commented
      Editing a comment
      Да я уже испробовал разные варианты, в т.ч. такие:

      last(ssh.run[appsdata.used,,$MPC_SSH_PORT},]) / last(ssh.run[appsdata.total,,$MPC_SSH_PORT},])
      last(ssh.run[appsdata.used]) / last(ssh.run[appsdata.total])
  • Kos
    Senior Member
    Zabbix Certified SpecialistZabbix Certified Professional
    • Aug 2015
    • 3404

    #3
    Да я уже испробовал разные варианты, в т.ч. такие:

    Code:
    last(ssh.run[appsdata.used,,$MPC_SSH_PORT},]) / last(ssh.run[appsdata.total,,$MPC_SSH_PORT},])
    last(ssh.run[appsdata.used]) / last(ssh.run[appsdata.total])
    Попробуйте ещё добавить двойные кавычки вокруг каждого ключа в вычисляемом выражении:
    Code:
    last("ssh.run[appsdata.used,,$MPC_SSH_PORT},]") / last("ssh.run[appsdata.total,,$MPC_SSH_PORT},]")
    Если используете версию Zabbix 5.4, то там синтаксис вычисляемых выражений немного поменялся, нужно будет поправить соответственно.

    Comment

    Working...