How to find which event will clear other events.
search cancel

How to find which event will clear other events.

book

Article ID: 136447

calendar_today

Updated On:

Products

CA Spectrum CA eHealth DX NetOps

Issue/Introduction

I'm trying to clear some alarms that are marked as non user clearable by using the procedure described in  

https://ca-broadcom.wolkenservicedesk.com/external/article?articleId=9001 

 

but for some reason, the event which should clear the alarm is not clearing it.

Environment

Release : 22.2.x

Component : Spectrum Core / SpectroSERVER

Cause

 

In Event Configuration editor, we can add "cleared alarms" cause code to an event.

This will cause the added events to be cleared by the event you are editing.

It does not cause the edited event to get cleared by these alarms.

This is a common mistake.  e.g. 0x00010027 does not clear 0x00010028 but gets cleared by it.

Resolution

From Event Configuration Editor (ECE), we cannot see what events clear the event loaded.  e.g. we cannot see event clears 0x00010027 in ECE


To do this, we need to search through the eventDisps

 

Example 1 - by running a grep from a linux shell on the <$SPECROOT>/SS/CsVendor folder, such as

/c/win32app/Spectrum/SS/CsVendor

$ grep -r "010027" .

./Cabletron/EventDisp:0x00010027 E 90 A 3,0x010027,T
./Cabletron/EventDisp:0x00010028 E 90 C 0x010027

0x00010027 causes an alarm but does not clear anything.

0x00010028 clears 0x00010027 

 

Example 2 - From the bash shell using find

find /usr/Spectrum/SS/CsVendor -type f -exec grep -i 0x0001040a {} \;

0x00010d11 E 50 A 3, 0x0001040a
0x00010d2a      C 0x0001040a C 0x0001040b C 0x0001040f C 0x00010410 C 0x00010411 C 0x0001040d C 0x00010d2d C 0x00010412 C 0x00010413

 

You can  also add this as a function to your .bashrc file

vi ~/.bashrc

getevents() { find /usr/Spectrum/SS/CsVendor -type f -exec grep -i $1 {} \; ;}

Note: You will likely need to adjust the path to your spectrum install, the event will pass into the $1 paremeter
Note: Sometimes events are written with the padded 0's and other times they are not. For example you may need to search both 0x0001040a and 0x1040a

re-source the .bashrc for this to take effect

. ~/.bashrc

# getevents 0x0001040a

0x00010d11 E 50 A 3, 0x0001040a
0x00010d2a      C 0x0001040a C 0x0001040b C 0x0001040f C 0x00010410 C 0x00010411 C 0x0001040d C 0x00010d2d C 0x00010412 C 0x00010413

 

 

 

 

 

We can use CLI to send the clear event as per articleId=9001

 

./create event type=<EVENT_CODE_THAT_CLEARS_THE_ALARM> text="Clearing Event" mh=<MODEL_HANDLE_OF_DEVICE>




Additional Information

Important! Do not customize the following list of event codes as this will adversely affect Spectrum’s fault isolation algorithms which leads to undesirable results.

LINK_GOOD = 0x00010d10,
LINK_BAD = 0x00010d11,
LINK_DISABLED = 0x00010d12,
LINK_UNKNOWN = 0x00010d13,
LINK_UNREACHABLE = 0x00010d14,
LINK_INITIAL = 0x00010d15,
LINK_BAD_SUPPRESSED = 0x00010d16,
LINK_LL_IN_MAINTENANCE = 0x00010d2e,
LINKED_PORT_BAD = 0x00010d17,
LINKED_DEVICE_BAD = 0x00010d18,
LINK_STATUS_CLEAR = 0x00010d2a,
LINK_DISABLED_AND_BAD = 0x0001040d,
LINK_ALWAYS_DOWN = 0x00010d2f,
LINK_BAD_WA_LINK_BAD = 0x00010d2d
CS_EVENT_ALARM_SET = 0x00010701
CS_EVENT_ALARM_UPDATED = 0x00010703
CS_EVENT_DEVICE_LOST = 0x00010302
DEVICE_CONTACT_STATUS_LOST = 0x00010d35
DEVICE_GATEWAY_UNREACHABLE = 0x00010d36
MGMT_LOST = 0x00010d00
UNRESOLVED_FAULT = 0x00010d05
APPLICATION_LOST = 0x00010d09
APPLICATION_REACTIVATED = 0x00010d0b
MGMT_REACTIVATED = 0x00010d0c
LINK_GOOD = 0x00010d10
LINK_BAD = 0x00010d11
LINK_DISABLED = 0x00010d12
LINK_UNKNOWN = 0x00010d13
LINK_UNREACHABLE = 0x00010d14
LINK_INITIAL = 0x00010d15
LINK_BAD_SUPPRESSED = 0x00010d16
LINKED_PORT_BAD = 0x00010d17
LINKED_DEVICE_BAD = 0x00010d18
DEV_MNGMNT_NBORS_DOWN = 0x00010d19
LANDSCAPE_CONTACT_STATUS_CLEAR = 0x00010d20
PORT_LOST = 0x00010d66
PORT_REACTIVATED = 0x00010d67
ALARMING_MGMT_LOST_EVENT = 0x10daa

Customizing the above events would have direct impact on Fault Isolation (FI)/ Internal Port Link Status (IPLS).

 

Was this helpful?