we get an trap 0x03b100aa:
# jnxDomAlarmSet ifDescr
1.3.6.1.4.1.2636.4.18.0.1 0x03b100aa 1.3.6.1.2.1.2.2.1.2(1,2)\
# jnxDomLastAlarms
1.3.6.1.4.1.2636.3.60.1.1.1.1.3(3,0)\
# jnxDomCurrentAlarms
1.3.6.1.4.1.2636.3.60.1.1.1.1.1(4,0)\
# jnxDomCurrentAlarmDate
1.3.6.1.4.1.2636.3.60.1.1.1.1.2(5,0)
{d "%w- %d %m-, %Y - %T"} - A "jnxDomAlarmSet" event has occurred, from {t} device, named {m}.\u000a\u000aNotification of a recently set Dom alarm.\u000a
ifDescr = {S 1}
ifDescr.ifIndex = {o 2}
jnxDomLastAlarms = {T jnxDomLastAlarms 3}
jnxDomCurrentAlarms = {T jnxDomCurrentAlarms 4}
jnxDomCurrentAlarmDate = {G 5}
(event [{e}])
We get for v3 and v4 every time empty value like the translation are not working correct:
jnxDomLastAlarms = {T jnxDomLastAlarms 3}
jnxDomCurrentAlarms = {T jnxDomCurrentAlarms 4}
BUT if I'm writing instead T but O on the Event definition in ECE then I can see this:
{d "%w- %d %m-, %Y - %T"} - A "jnxDomAlarmSet" event has occurred, from {t} device, named {m}.\u000a\u000aNotification of a recently set Dom alarm.\u000a
ifDescr = {S 1}
ifDescr.ifIndex = {o 2}
jnxDomLastAlarms = {O 3}
jnxDomCurrentAlarms = {O 4}
jnxDomCurrentAlarmDate = {K 5}
(event [{e}])
Why is the varbind event table translation not working?
Release : 21.2.2
Component :
The vendor mib defines the attribute in questions as
jnxDomLastAlarms OBJECT-TYPE
SYNTAX JnxDomAlarmId {
domRxLossSignalAlarm(0),
domRxCDRLossLockAlarm(1),
domRxNotReadyAlarm(2),
domRxLaserPowerHighAlarm(3),
domRxLaserPowerLowAlarm(4),
domTxLaserBiasCurrentHighAlarm(5),
domTxLaserBiasCurrentLowAlarm(6),
domTxLaserOutputPowerHighAlarm(7),
domTxLaserOutputPowerLowAlarm(8),
domTxDataNotReadyAlarm(9),
domTxNotReadyAlarm(10),
domTxLaserFaultAlarm(11),
domTxCDRLossLockAlarm(12),
domModuleTemperatureHighAlarm(13),
domModuleTemperatureLowAlarm(14),
domModuleNotReadyAlarm(15),
domModulePowerDownAlarm(16),
domLinkDownAlarm(17),
domModuleRemovedAlarm(18),
domModuleVoltageHighAlarm(19),
domModuleVoltageLowAlarm(20)
}
and the resulting translation table created automatically by mib tools when mapping the jnxDomLastAlarms_en_US attribute has the correct format. Enumerated attribute tables should be listed in hex or simple integers to map to the above values .
/win32app/Spectrum/SG-Support/CsEvFormat/EventTables/jnxDomLastAlarms_en_US
0x00000000 domRxLossSignalAlarm
0x00000001 domRxCDRLossLockAlarm
0x00000002 domRxNotReadyAlarm
0x00000003 domRxLaserPowerHighAlarm
0x00000004 domRxLaserPowerLowAlarm
0x00000005 domTxLaserBiasCurrentHighAlarm
0x00000006 domTxLaserBiasCurrentLowAlarm
0x00000007 domTxLaserOutputPowerHighAlarm
0x00000008 domTxLaserOutputPowerLowAlarm
0x00000009 domTxDataNotReadyAlarm
0x0000000a domTxNotReadyAlarm
0x0000000b domTxLaserFaultAlarm
0x0000000c domTxCDRLossLockAlarm
0x0000000d domModuleTemperatureHighAlarm
0x0000000e domModuleTemperatureLowAlarm
0x0000000f domModuleNotReadyAlarm
0x000000010 domModulePowerDownAlarm
0x000000011 domLinkDownAlarm
0x000000012 domModuleRemovedAlarm
but the values coming in the trap for this varbind are in octet format so are not matching the table and cannot be translated by Spectrum.
The trap is sending the attribute varbind values in the wrong format to match the table predefined in their own mib. When I map the attribute via their mib, it is defined as an octet string and when you change the varbind type to octet string in the alarm
jnxDomLastAlarms = {O 3}
jnxDomCurrentAlarms = {O 4}
we see the values as 0.0.0 and 8.0.0 in the alarm instead of a simple integer as it should be
That values in the trap varbind does not have the same format. This is something you will need to discuss with the vendor as we have tried to work around this problem and cannot.