cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
439
Views
0
Helpful
4
Replies

DFM mail notifier with multiple events

imts
Level 1
Level 1

I'm quite frustrated with trying to get the mail_notify.conf working with anything other than a single "everything" statement like the one below.

GA_ChoiceSubscription::Mail-All-Subscriptions

{

# Subscribe to events whose class, instance, and event

# names match the given pattern.

className = ".*"

instanceName = ".*"

eventName = ".*"

# Include aggregates, but omit symptoms.

Aggregates = TRUE

symptoms = TRUE

}

If I try to put a more granular set of statements in with the "," between them, it just does nothing.

So rather than ask about brackets or other syntax, can anyone share an example of a working mail_notify.conf with multiple entries?

Thanks

4 Replies 4

steve.busby
Level 5
Level 5

imts,

Try this--comment out the "Mail-All-Subscriptions" and create multiple subscriptions. Heres a sample (remember, spacing will be off, but you get the idea):

# SubscribesTo =

# {

# GA_ChoiceSubscription::Mail-All-Subscriptions

# {

# className = ".*"

# instanceName = ".*"

# eventName = ".*"

# problems = FALSE

# aggregates = TRUE

# symptoms = FALSE

# }

# }

SubscribesTo =

{

GA_ChoiceSubscription::PowerSupply_Fault-All-Subscriptions

{

# Subscribe to events whose class, instance, and event

# names match the given pattern.

className = "PowerSupply_Fault.*"

instanceName = ".*"

eventName = ".*"

aggregates = TRUE

symptoms = TRUE

},

GA_ChoiceSubscription::Chassis-Fault-All-Subscriptions

{

# Subscribe to events whose class, instance, and event

# names match the given pattern.

className = "Chassis.*"

instanceName = ".*"

eventName = ".*"

aggregates = TRUE

symptoms = TRUE

},

GA_ChoiceSubscription::Card-Fault-All-Subscriptions

{

# Subscribe to events whose class, instance, and event

# names match the given pattern.

className = "Card.*"

instanceName = ".*"

eventName = ".*"

aggregates = TRUE

symptoms = TRUE

},

GA_ChoiceSubscription::Fan_Fault-All-Subscriptions

{

# Subscribe to events whose class, instance, and event

# names match the given pattern.

className = "Fan_Fault.*"

instanceName = ".*"

eventName = ".*"

aggregates = TRUE

symptoms = TRUE

},

GA_ChoiceSubscription::TemperatureSensor_Fault-All-Subscriptions

{

# Subscribe to events whose class, instance, and event

# names match the given pattern.

className = "TemperatureSensor_Fault.*"

instanceName = ".*"

eventName = ".*"

aggregates = TRUE

symptoms = TRUE

}

}

Thanks for the reply

That example validates what I'm trying to do.

How about this, does it look right?

Thanks in advance.

-----------------------------------------------

SubscribesTo =

{

GA_ChoiceSubscription::anythingDown

{

# Subscribe to events whose class, instance, and event

# names match the given pattern.

className = ".*"

instanceName = ".*"

eventName = "OperationallyDown"

# Include aggregates, but omit symptoms.

Aggregates = FALSE

symptoms = TRUE

},

GA_ChoiceSubscription::anythingTemp

{

# Subscribe to events whose class, instance, and event

# names match the given pattern.

className = ".*"

instanceName = ".*"

eventName = "TemperatureException"

# Include aggregates, Hbut omit symptoms.

Aggregates = TRUE

symptoms = TRUE

},

GA_ChoiceSubscription::anythingFan

{

# Subscribe to events whose class, instance, and event

# names match the given pattern.

className = ".*"

instanceName = ".*"

eventName = "FanStateNotNormal"

# Include aggregates, but omit symptoms.

Aggregates = TRUE

symptoms = TRUE

},

GA_ChoiceSubscription::TempRange

{

# Subscribe to events whose class, instance, and event

# names match the given pattern.

className = ".*"

instanceName = ".*"

eventName = "TemperatureOutOfRange"

# Include aggregates, but omit symptoms.

Aggregates = TRUE

symptoms = TRUE

},

GA_ChoiceSubscription::TempNotNormal

{

# Subscribe to events whose class, instance, and event

# names match the given pattern.

className = ".*"

instanceName = ".*"

eventName = "TemperatureStateNotNormal"

# Include aggregates, but omit symptoms.

Aggregates = TRUE

symptoms = TRUE

},

GA_ChoiceSubscription::AnythingPower

{

# Subscribe to events whose class, instance, and event

# names match the given pattern.

className = "PowerSupply_Fault.*"

instanceName = ".*"

eventName = ".*"

aggregates = TRUE

symptoms = TRUE

},

GA_ChoiceSubscription::SNMPtraps

{

# Subscribe to events whose class, instance, and event

# names match the given pattern.

className = "SNMPTrap"

instanceName = ".*"

eventName = "MajorAlarm"

# Include aggregates, but omit symptoms.

Aggregates = FALSE

symptoms = TRUE

},

GA_ChoiceSubscription::Flapping

{

# Subscribe to events whose class, instance, and event

# names match the given pattern.

className = ".*"

instanceName = ".*"

eventName = "Flapping"

# Include aggregates, but omit symptoms.

Aggregates = FALSE

symptoms = TRUE

},

GA_ChoiceSubscription::AnythingChassis

{

# Subscribe to events whose class, instance, and event

# names match the given pattern.

className = "Chassis"

instanceName = ".*"

eventName = ".*"

# Include aggregates, but omit symptoms.

Aggregates = FALSE

symptoms = TRUE

},

}

Looks like it should work--does it?

I just got spammed from all our 2950s DFM deems as running low on mem. Not sure if this is due to bug CSCdv53955 however we are running 1.2. The other statements should prove out tonight when we take down a 6513 for maintenance.

So in essence, it looks to be working.

Thanks much for your help !!

Review Cisco Networking for a $25 gift card