Ad Widget

Collapse

Добавление одного элемента данных по условию ответа от другого

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • ilyadiff
    Junior Member
    • Dec 2018
    • 1

    #1

    Добавление одного элемента данных по условию ответа от другого

    Здравствуйте. Есть такая ситуация: Есть оптический коммутатор (Eltex), в который включены SFP модули. Часть этих SFP-модулей по SNMP умеет выдавать DDM, другая не умеет.
    Есть OID для замера мощности RX/TX сигнала - 1.3.6.1.4.1.89.90.1.2.1.3.(index порта).8 и .9 - на них потом создаются ЭД. Назовём их ЭД1 и ЭД2
    Есть OID для определения, умеет ли модуль выдавать DDM - 1.3.6.1.4.1.89.90.1.2.1.3.(index порта).10 (если ответ равен 1, то умеет, если выдаёт 0 или отсутствует - значит не умеет). Назовём его ЭД3.

    Задача: настроить шаблон (обнаружение, ЭД, прототипы ЭД) так, чтобы ЭД1 и ЭД2 добавлялись автоматически ТОЛЬКО для тех интерфесов, которые снимают DDM.
    Сейчас автоматически без разбора эти ЭД добавляются для любых портов и рисуются в то числе и пустые графики на не-DDM порты - это захламляет базу.

    Если сформулировать задачу проще - научить шаблон создавать один элемент данных по условию результата, полученного от другого элемента данных.

    Было предпринято решение как-то использовать OID 1.3.6.1.4.1.89.90.1.2.1.3.(index порта).10 (создав ЭД3) как определяющий, "нужно ли создавать" ЭД1 и ЭД2 или нет. Но не знаю как.
    По документации не смог понять как пользоваться составными индексами или как присвоить макросу ответ от ЭД.
    Если в LLD в функцию discovery добавить всю ветку 1.3.6.1.4.1.89.90.1.2.1.3, то ответ будет состоять из столбца результатов разных параметров, поскольку индекс порта не последний, а предпоследний.
    Но я не знаю как фильтровать такие результаты - при помощи чего? Нужно развёрнутое решение, как это можно сделать.
Working...