состояние отправки ловушки pysnmp - PullRequest
0 голосов
/ 24 апреля 2019

Я хочу проверить, была ли отправка сообщений ловушки snmp успешной или неудачной, и зарегистрировать ее.

Поэтому мне было интересно, если я проверю возвращаемое значение transportDispatcher.runDispatcher (), выдаст ли это какой-либо код ошибки.

Какие есть другие варианты?

1 Ответ

0 голосов
/ 24 апреля 2019

Если вы используете синхронный hlapi API , вам следует проверить errorIndication - он будет содержать локальные ошибки SNMP:

>>> from pysnmp.hlapi import *
>>> g = sendNotification(SnmpEngine(),
...                      CommunityData('public'),
...                      UdpTransportTarget(('demo.snmplabs.com', 162)),
...                      ContextData(),
...                      'trap',
...                      NotificationType(ObjectIdentity('IF-MIB', 'linkDown')))
>>> next(g)
(None, 0, 0, [])

Удаленная сторона не может сообщать об ошибках SNMP, так как это однонаправленный обмен.

Кроме того, исключение PySnmpError может потенциально возникнуть при серьезной ошибке, отличной от SNMP.

...