NetXMS Support Forum

Russian Support => Общие вопросы => Topic started by: prx on February 08, 2008, 08:01:21 AM

Title: SNMP + switch
Post by: prx on February 08, 2008, 08:01:21 AM
Заметил странную ситуацию как устройство с большим количеством портов отмечается как critical.

Во вложении log.

Проблема в том что SNMP agent отключился в 08:46:21, а node down появилось только в 8:49:27.
Все это время netxms по одному помечал все интерфпейсы как UNKNOWN.
Это более чем странно, ведь Он уже знает что SNMP agent не отвечает.

А еще все эти сообщения вылезли в лог в одно время - когда произошло node down

Кстати было бы классно, если лог можно было бы просто скопировать :)
Title: Re: SNMP + switch
Post by: Victor Kirhenshtein on February 08, 2008, 12:48:21 PM
Про долгие проверки каждого интерфейса - это баг. А в лог они попадают в одно время с SYS_NODE_DOWN поскольку их придерживает механизм корреляции событий - чтобы можно было все SYS_IF_DOWN скоррелировать с SYS_NODE_DOWN и через event policy пропустить только SYS_NODE_DOWN.
Title: Re: SNMP + switch
Post by: prx on May 23, 2008, 01:06:49 PM
Quote from: Victor Kirhenshtein on February 08, 2008, 12:48:21 PM
Про долгие проверки каждого интерфейса - это баг. А в лог они попадают в одно время с SYS_NODE_DOWN поскольку их придерживает механизм корреляции событий - чтобы можно было все SYS_IF_DOWN скоррелировать с SYS_NODE_DOWN и через event policy пропустить только SYS_NODE_DOWN.


Надоело ждать решения проблемы - сделал сам, вроде пока никаких проблем с этим не наблюдается:
Если кого-то интересует:
Находим в interface.cpp в функции StatusPoll (строка 254) строчку вида:

      if (bNeedPoll && (pNode->Flags() & NF_IS_SNMP) &&
          (!(pNode->Flags() & NF_DISABLE_SNMP)))


и меняем ее на

      if (bNeedPoll && (pNode->Flags() & NF_IS_SNMP) &&
          (!(pNode->Flags() & NF_DISABLE_SNMP)) && (!(pNode->RuntimeFlags() & NDF_SNMP_UNREACHABLE)))


Теперь если SNMP agent недоступен опрос интерфейса будет пропущен - не совсем красиво, но хотя бы теперь быстрее работает.
Title: Re: SNMP + switch
Post by: Victor Kirhenshtein on May 23, 2008, 05:02:33 PM
Просто не успел до этого добраться, времени дико не хватает... Спасибо, вставлю в основной код. :) Решение абсолютно правильное.