search cancel

Spectrum eventTable Translation not working

book

Article ID: 230619

calendar_today

Updated On:

Products

CA Spectrum

Issue/Introduction

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?

Environment

Release : 21.2.2

Component :

Cause

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.

https://api-broadcom-ca.wolkenservicedesk.com/attachment/get_attachment_content?uniqueFileId=UMsjS65IIPstgBsQcJhFdw==

 

Resolution

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.  

Attachments