Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Flatly)
  • No Skin
Collapse
Brand Logo

NetXMS Forum

  1. Home
  2. Support (Russian)
  3. Корреляция ивентов

Корреляция ивентов

Scheduled Pinned Locked Moved Support (Russian)
8 Posts 2 Posters 14.3k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • 2
    2
    2c2i
    wrote on last edited by
    #1

    Происходит такая ситуация: связь с коммутатором пропадает на короткое время(~10 сек)
    Генерируются такие ивенты:

    2543057	02.09.2015 23:32:10	AGG-campus-1/2	SYS_SNMP_OK	Normal	Connectivity with SNMP agent restored		0
    2543067	02.09.2015 23:32:10	AGG-campus-1/2	SYS_IF_UP	Normal	Interface "1/8 (DL to campus-5)" changed state to UP (IP Addr: UNSPEC/0, IfIndex: 8)	Interface "1/8 (DL to campus-5)" changed state to UP (IP Addr: 	0
    2543072	02.09.2015 23:32:10	AGG-campus-1/2	SYS_IF_EXPECTED_DOWN	Normal	Interface "1/6 (FREE)" with expected state DOWN changed state to DOWN (IP Addr: UNSPEC/0, IfIndex: 6)	Interface "1/6 (FREE)" with expected state DOWN changed state t	0
    2543081	02.09.2015 23:32:10	AGG-campus-1/2	SYS_IF_UP	Normal	Interface "1/1 (DL to campus-1-f1)" changed state to UP (IP Addr: UNSPEC/0, IfIndex: 1)	Interface "1/1 (DL to campus-1-f1)" changed state to UP (IP Add	0
    2543086	02.09.2015 23:32:10	AGG-campus-1/2	SYS_IF_UP	Normal	Interface "1/2 (DL to campus-1-f2)" changed state to UP (IP Addr: UNSPEC/0, IfIndex: 2)	Interface "1/2 (DL to campus-1-f2)" changed state to UP (IP Add	0
    2543089	02.09.2015 23:32:10	AGG-campus-1/2	SYS_IF_UP	Normal	Interface "1/4 (DL to campus-1-f4)" changed state to UP (IP Addr: UNSPEC/0, IfIndex: 4)	Interface "1/4 (DL to campus-1-f4)" changed state to UP (IP Add	0
    2543093	02.09.2015 23:32:10	AGG-campus-1/2	SYS_IF_UP	Normal	Interface "1/5 (DL to campus-1/2)" changed state to UP (IP Addr: UNSPEC/0, IfIndex: 5)	Interface "1/5 (DL to campus-1/2)" changed state to UP (IP Addr	0
    2543101	02.09.2015 23:32:10	AGG-campus-1/2	SYS_IF_UP	Normal	Interface "1/9 (UPL to lab2)" changed state to UP (IP Addr: UNSPEC/0, IfIndex: 9)	Interface "1/9 (UPL to lab2)" changed state to UP (IP Addr: UNS	0
    2543114	02.09.2015 23:32:10	AGG-campus-1/2	SYS_IF_EXPECTED_DOWN	Normal	Interface "1/7 (FREE)" with expected state DOWN changed state to DOWN (IP Addr: UNSPEC/0, IfIndex: 7)	Interface "1/7 (FREE)" with expected state DOWN changed state t	0
    2543119	02.09.2015 23:32:10	AGG-campus-1/2	SYS_IF_EXPECTED_DOWN	Normal	Interface "1/10 (FREE)" with expected state DOWN changed state to DOWN (IP Addr: UNSPEC/0, IfIndex: 10)	Interface "1/10 (FREE)" with expected state DOWN changed state 	0
    2543126	02.09.2015 23:32:10	AGG-campus-1/2	SYS_IF_UP	Normal	Interface "1/3 (DL to campus-1-f3)" changed state to UP (IP Addr: UNSPEC/0, IfIndex: 3)	Interface "1/3 (DL to campus-1-f3)" changed state to UP (IP Add	0
    2543050	02.09.2015 23:32:06	AGG-campus-1/2	SNMP_UNMATCHED_TRAP	Normal	SNMP trap received: .1.0.8802.1.1.2.0.0.1 (Parameters: .1.0.8802.1.1.2.1.2.2 == '1'; .1.0.8802.1.1.2.1.2.3 == '0'; .1.0.8802.1.1.2.1.2.4 == '0'; .1.0.8802.1.1.2.1.2.5 == '0')	SNMP trap received: .1.0.8802.1.1.2.0.0.1 (Parameters: .1.0.880	0
    2542813	02.09.2015 23:31:31	AGG-campus-1/2	SYS_IF_UNKNOWN	Warning	Interface "1/1 (DL to campus-1-f1)" changed state to UNKNOWN (IP Addr: UNSPEC/0, IfIndex: 1)	Interface "1/1 (DL to campus-1-f1)" changed state to UNKNOWN (I	0
    2542816	02.09.2015 23:31:31	AGG-campus-1/2	SYS_IF_UNKNOWN	Warning	Interface "1/2 (DL to campus-1-f2)" changed state to UNKNOWN (IP Addr: UNSPEC/0, IfIndex: 2)	Interface "1/2 (DL to campus-1-f2)" changed state to UNKNOWN (I	0
    2542817	02.09.2015 23:31:31	AGG-campus-1/2	SYS_IF_UNKNOWN	Warning	Interface "1/4 (DL to campus-1-f4)" changed state to UNKNOWN (IP Addr: UNSPEC/0, IfIndex: 4)	Interface "1/4 (DL to campus-1-f4)" changed state to UNKNOWN (I	0
    2542819	02.09.2015 23:31:31	AGG-campus-1/2	SYS_IF_UNKNOWN	Warning	Interface "1/5 (DL to campus-1/2)" changed state to UNKNOWN (IP Addr: UNSPEC/0, IfIndex: 5)	Interface "1/5 (DL to campus-1/2)" changed state to UNKNOWN (IP	0
    2542820	02.09.2015 23:31:31	AGG-campus-1/2	SYS_IF_UNKNOWN	Warning	Interface "1/9 (UPL to lab2)" changed state to UNKNOWN (IP Addr: UNSPEC/0, IfIndex: 9)	Interface "1/9 (UPL to lab2)" changed state to UNKNOWN (IP Addr	0
    2542821	02.09.2015 23:31:31	AGG-campus-1/2	SYS_IF_UNKNOWN	Warning	Interface "1/7 (FREE)" changed state to UNKNOWN (IP Addr: UNSPEC/0, IfIndex: 7)	Interface "1/7 (FREE)" changed state to UNKNOWN (IP Addr: UNSPE	0
    2542822	02.09.2015 23:31:31	AGG-campus-1/2	SYS_IF_UNKNOWN	Warning	Interface "1/10 (FREE)" changed state to UNKNOWN (IP Addr: UNSPEC/0, IfIndex: 10)	Interface "1/10 (FREE)" changed state to UNKNOWN (IP Addr: UNSP	0
    2542823	02.09.2015 23:31:31	AGG-campus-1/2	SYS_IF_UNKNOWN	Warning	Interface "1/3 (DL to campus-1-f3)" changed state to UNKNOWN (IP Addr: UNSPEC/0, IfIndex: 3)	Interface "1/3 (DL to campus-1-f3)" changed state to UNKNOWN (I	0
    2542686	02.09.2015 23:31:28	AGG-campus-1/2	SYS_SNMP_UNREACHABLE	Warning	SNMP agent is not responding		0
    2542748	02.09.2015 23:31:28	AGG-campus-1/2	SYS_IF_UNKNOWN	Warning	Interface "1/8 (DL to campus-5)" changed state to UNKNOWN (IP Addr: UNSPEC/0, IfIndex: 8)	Interface "1/8 (DL to campus-5)" changed state to UNKNOWN (IP A	0
    2542749	02.09.2015 23:31:28	AGG-campus-1/2	SYS_IF_UNKNOWN	Warning	Interface "1/6 (FREE)" changed state to UNKNOWN (IP Addr: UNSPEC/0, IfIndex: 6)	Interface "1/6 (FREE)" changed state to UNKNOWN (IP Addr: UNSPE	0
    

    Проблема заключается в том что после нормализации ситуации обрабатываются ивенты SYS_IF_UP/SYS_IF_EXPECTED_DOWN, в то вмемя как я ожидаю лишь SYS_NODE_DOWN/SYS_NODE_UP

    Судя по всему при опросе статуса интерфейсов по snmp происходит таймаут и генерируется аларм SYS_IF_UNKNOWN. Однако SYS_NODE_DOWN не генерируется.

    Правильно ли я понимаю что:
     - должен генерироваться SYS_NODE_DOWN
     - ивенты SYS_IF_UNKNOWN/SYS_IF_UP/SYS_IF_EXPECTED_DOWN должны быть подавлены функцией корреляции ивентов (если бы был получен SYS_NODE_DOWN)

    Или же ивенты смены статуса интерфейса после SYS_IF_UNKNOWN я должен сам отфильтровать в Event Processing Policy?
    Куда копать, чтобы понять почему нет SYS_NODE_DOWN?

    1 Reply Last reply
    0
    • V
      V
      Victor Kirhenshtein
      wrote on last edited by
      #2

      SYS_NODE_DOWN может не быть если SNMP отвалился, но на ping коммутатор уже ответил. Тогда сервер считает, что проблема только с SNMP агентом.

      1 Reply Last reply
      0
      • 2
        2
        2c2i
        wrote on last edited by
        #3

        То есть выходит что статус ноды проверяется независимо по таймеру. Может при опросе DCI при получении ошибки логичнее сразу проверить статус ноды?

        1 Reply Last reply
        0
        • 2
          2
          2c2i
          wrote on last edited by
          #4

          Сейчас возникла похожая ситуация - несколько коммутаторов доступа были отключены по питанию.  Для них сгенерировались ивенты SYS_SNMP_UNREACHABLE, статус у них=0, и SYS_NODE_DOWN ивент не генерируется, при этом коммутаторы не отвечают ни на SNMP, ни на ping уже продолжительное время(4ч).
          Я допускаю что теоретически ивент SYS_NODE_DOWN  мог быть подавлен корреляцией, тк в это же время на коммутаторе аггрегации упали порты к этим коммутаторам доступа, однако в таком случае SYS_NODE_DOWN все равно должен появиться в EventLog(насколько я понял) - этого не произошло. После выполнения руками Configuration poll на одной из нод, ивент SYS_NODE_DOWN наконец сгенерировался и стаус ноды стал Critical.

          Куда копать чтобы выяснить причину отсутствия SYS_NODE_DOWN?

          1 Reply Last reply
          0
          • 2
            2
            2c2i
            wrote on last edited by
            #5

            Отмечу что просто Configuration poll не приводит к смене статуса и генерации  SYS_NODE_DOWN, нужно делать именно Configuration poll ( full)

            1 Reply Last reply
            0
            • 2
              2
              2c2i
              wrote on last edited by
              #6
              root@monitoring-is:/var/log# tail -f netxmsd | grep TTM6-f4
              [05-Dec-2015 19:29:36.688] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:37.695] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:38.702] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:39.709] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:40.714] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:41.721] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:42.727] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:43.733] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:44.737] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:45.743] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:46.749] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:47.754] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:48.760] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:49.767] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:50.773] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:51.779] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:51.779] [DEBUG] DataCollectionTarget(ACC-TTM6-f4)->QueueItemsForPolling(): item 117 "Status" added to queue
              [05-Dec-2015 19:29:52.785] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:53.791] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:54.796] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:55.802] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:56.808] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:57.816] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:58.820] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:29:59.827] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:00.832] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:01.839] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:02.847] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:03.853] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:04.162] [DEBUG] Node 2216 "ACC-TTM6-f4" queued for status poll
              [05-Dec-2015 19:30:04.162] [DEBUG] Starting status poll for node ACC-TTM6-f4 (ID: 2216)
              [05-Dec-2015 19:30:04.162] [DEBUG] StatusPoll(ACC-TTM6-f4): check SNMP
              [05-Dec-2015 19:30:04.861] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:05.868] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:06.874] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:07.882] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:08.889] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:09.895] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:10.903] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:11.907] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:12.171] [DEBUG] StatusPoll(ACC-TTM6-f4): SNMP check finished
              [05-Dec-2015 19:30:12.171] [DEBUG] StatusPoll(ACC-TTM6-f4): starting child object poll
              [05-Dec-2015 19:30:12.171] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2683 [802.1Q Encapsulation Tag 0336]
              [05-Dec-2015 19:30:12.171] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2668 [15]
              [05-Dec-2015 19:30:12.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2685 [802.1Q Encapsulation Tag 0339]
              [05-Dec-2015 19:30:12.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2686 [System]
              [05-Dec-2015 19:30:12.916] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:13.922] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:14.930] [DEBUG] ItemPoller: calling DataCollectionTarget::queueItemsForPolling for object ACC-TTM6-f4 [2216]
              [05-Dec-2015 19:30:15.171] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2682 [802.1Q Encapsulation Tag 0001]
              [05-Dec-2015 19:30:15.171] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2676 [23]
              [05-Dec-2015 19:30:15.171] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2677 [24]
              [05-Dec-2015 19:30:15.171] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2658 [5]
              [05-Dec-2015 19:30:15.171] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2665 [12]
              [05-Dec-2015 19:30:15.171] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2679 [26 ("UPL to TTM5 agg")]
              [05-Dec-2015 19:30:15.171] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2678 [25 (FREE)]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2655 [2]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2657 [4]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2656 [3]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2659 [6]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2660 [7]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2662 [9]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2661 [8]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2671 [18]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2673 [20]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2674 [21 (market)]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2675 [22]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2663 [10]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2667 [14]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2669 [16]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2672 [19]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2680 [27 (FREE)]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2681 [28 (FREE)]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2684 [802.1Q Encapsulation Tag 0338]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2664 [11]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2654 [1]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2666 [13]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): polling interface 2670 [17]
              [05-Dec-2015 19:30:15.172] [DEBUG] StatusPoll(ACC-TTM6-f4): finished child object poll
              [05-Dec-2015 19:30:15.173] [DEBUG] StatusPoll(ACC-TTM6-f4): bAllDown=false, dynFlags=0x00001011
              

              Вот лог сервера относительно ноды для которой не генерируется SYS_NODE_DOWN.
              Меня смутила надпись bAllDown=false, посмотрев код оказалось этот флаг описывает состояние дочерних объектов(интерфейсов), при этом нода переводится в состояние NDF_UNREACHABLE только если bAllDown = true, судя по всему этот флаг у меня не выставляется тк некоторые из интерфейсов коммутатора имеют expected state=ignore и в коде:
                                   

                                            for(i = 0, bAllDown = TRUE; i < m_dwChildCount; i++)
                                              if ((m_pChildList[i]->getObjectClass() == OBJECT_INTERFACE) &&
                                                       (m_pChildList[i]->Status() != STATUS_CRITICAL) &&
                                                       (m_pChildList[i]->Status() != STATUS_UNKNOWN) &&
                                                       (m_pChildList[i]->Status() != STATUS_UNMANAGED) &&
                                                       (m_pChildList[i]->Status() != STATUS_DISABLED))
                                              {
                                                      bAllDown = FALSE;
                                                      break;
                                              }
              

              незасимо от их состояния  bAllDown устанавливается в FALSE.

              Кроме того, насколько я понял, статус NDF_UNREACHABLE устанавливается только если bAllDown=true, а ICMP ответы к IP ноды вообще не проверяются.

              if (bAllDown && (m_dwFlags & NF_IS_NATIVE_AGENT) &&
                                  (!(m_dwFlags & NF_DISABLE_NXCP)))
                                 if (!(m_dwDynamicFlags & NDF_AGENT_UNREACHABLE))
                                    bAllDown = FALSE;
                              if (bAllDown && (m_dwFlags & NF_IS_SNMP) &&
                                  (!(m_dwFlags & NF_DISABLE_SNMP)))
                                 if (!(m_dwDynamicFlags & NDF_SNMP_UNREACHABLE))
                                    bAllDown = FALSE;
              
                              DbgPrintf(6, _T("StatusPoll(%s): bAllDown=%s, dynFlags=0x%08X"), m_name, bAllDown ? _T("true") : _T("false"), m_dwDynamicFlags);
                              if (bAllDown)
                              {
                                 if (!(m_dwDynamicFlags & NDF_UNREACHABLE))
                                 {
                                    m_dwDynamicFlags |= NDF_UNREACHABLE;
              

              Верно ли что:

              1. ICMP проверки выполняются только для определения статуса интерфейсов?, для объекта "нода" вцелом ICMP проверки доступности не происходит?
              2. Если у ноды есть интерфесы в статусе IGNORE то проверка  (m_pChildList[i]->Status() != STATUS_CRITICAL) && (m_pChildList[i]->Status() != STATUS_UNKNOWN) && (m_pChildList[i]->Status() != STATUS_UNMANAGED) && (m_pChildList[i]->Status() != STATUS_DISABLED) всегда даст FALSE и тогда bAllDown никогда не будет true, соответственно by нода не перейдет в режим  NDF_UNREACHABLE

              ?

              1 Reply Last reply
              0
              • 2
                2
                2c2i
                wrote on last edited by
                #7

                Я немного поспешил с выводами, проблема еще чуть чуть дальше. Похоже корень проблемы - интерфейс коммутатора System, на котором как раз поднят IP коммутатора, в моем случае его expected state был IGNORE, таким образом его статус всегда оставался  Normal, независимо от результата ICMP проверки.

                Проверьте пожалуйста мои выкладки.
                Если они верны - мне кажется было бы полезно добавить ICMP проверку самой ноды, а не только её дочерних интерфейсов, тк это неочевидное поведение что если интерфейс имеющий IP перевести в expected state =IGNORE, то нода никогда не станет NDF_UNREACHABLE.

                Для проверки я создал новую ноду с недоступным IP. Для автоматически созданного ей интерфейса unknown установил expected state =IGNORE, и нода вслед за интерфейсом unknown перешла в состояние NORMAL.

                1 Reply Last reply
                0
                • V
                  V
                  Victor Kirhenshtein
                  wrote on last edited by
                  #8

                  Топик конечно устарел, но на всякий случай - проблема решена в 2.0.2.

                  1 Reply Last reply
                  0

                  Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                  Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                  With your input, this post could be even better 💗

                  Register Login
                  Reply
                  • Reply as topic
                  Log in to reply
                  • Oldest to Newest
                  • Newest to Oldest
                  • Most Votes


                  • Login

                  • Don't have an account? Register

                  • Login or register to search.
                  Powered by NodeBB Contributors
                  • First post
                    Last post
                  0
                  • Categories
                  • Recent
                  • Tags
                  • Popular
                  • Users
                  • Groups