Blank Email Alerts being generated from FMS
WORKAROUND:
In order to identify those rules, please navigate to Script Editor (Administration > Tooling > Script Console > Scripts tab):
Click the Add button
Paste in the following script in the Script box and click Run. Note that it may take some time to complete depending on the alarm count.
msg = new StringBuffer();
for (rule in server.get("RuleService").getAllRules())
{
if (rule.isSeverityFamily()) {
if ((severity = rule.getNormal())) {
[severity.getFireActionMappings(),severity.getExitActionMappings()].each { actionlist -> actionlist.each { action ->
if (action.getActionName().equals("EmailAction")) {
if (!( [action.getVariableReferences(),action.getRegistryValueReferences(),action.getMessages()].any{it.any{it.getName().equals("mail.subject")}})) {
msg.append("RULE: " + rule.getName() + " - NORMAL is missing a subject\n");
}
if (!( [action.getVariableReferences(),action.getRegistryValueReferences(),action.getMessages()].any{it.any{it.getName().equals("mail.message")}})) {
msg.append("RULE: " + rule.getName() + " - NORMAL is missing a message\n");
}
}
}}
}
if ((severity = rule.getWarning())) {
[severity.getFireActionMappings(),severity.getExitActionMappings()].each { actionlist -> actionlist.each { action ->
if (action.getActionName().equals("EmailAction")) {
if (!( [action.getVariableReferences(),action.getRegistryValueReferences(),action.getMessages()].any{it.any{it.getName().equals("mail.subject")}})) {
msg.append("RULE: " + rule.getName() + " - WARNING is missing a subject\n");
if (!( [action.getVariableReferences(),action.getRegistryValueReferences(),action.getMessages()].any{it.any{it.getName().equals("mail.message")}})) {
msg.append("RULE: " + rule.getName() + " - WARNING is missing a message\n");
}
}
}
}}
}
if ((severity = rule.getCritical())) {
[severity.getFireActionMappings(),severity.getExitActionMappings()].each { actionlist -> actionlist.each { action ->
if (action.getActionName().equals("EmailAction")) {
if (!( [action.getVariableReferences(),action.getRegistryValueReferences(),action.getMessages()].any{it.any{it.getName().equals("mail.subject")}})) {
msg.append("RULE: " + rule.getName() + " - CRITICAL is missing a subject\n");
if (!( [action.getVariableReferences(),action.getRegistryValueReferences(),action.getMessages()].any{it.any{it.getName().equals("mail.message")}})) {
msg.append("RULE: " + rule.getName() + " - CRITICAL is missing a message\n");
}
}
}
}}
}
if ((severity = rule.getFatal())) {
[severity.getFireActionMappings(),severity.getExitActionMappings()].each { actionlist -> actionlist.each { action ->
if (action.getActionName().equals("EmailAction")) {
if (!( [action.getVariableReferences(),action.getRegistryValueReferences(),action.getMessages()].any{it.any{it.getName().equals("mail.subject")}})) {
msg.append("RULE: " + rule.getName() + " - FATAL is missing a subject\n");
}
if (!( [action.getVariableReferences(),action.getRegistryValueReferences(),action.getMessages()].any{it.any{it.getName().equals("mail.message")}})) {
msg.append("RULE: " + rule.getName() + " - FATAL is missing a message\n");
}
}
}}
}
} else if (rule.isSimple()) {
if ((severity = rule.getFire())) {
[severity.getFireActionMappings(),severity.getExitActionMappings()].each { actionlist -> actionlist.each { action ->
if (action.getActionName().equals("EmailAction")) {
if (!( [action.getVariableReferences(),action.getRegistryValueReferences(),action.getMessages()].any{it.any{it.getName().equals("mail.subject")}})) {
msg.append("SIMPLE RULE: " + rule.getName() + " - FIRE is missing a subject\n");
}
if (!( [action.getVariableReferences(),action.getRegistryValueReferences(),action.getMessages()].any{it.any{it.getName().equals("mail.message")}})) {
msg.append("SIMPLE RULE: " + rule.getName() + " - FIRE is missing a message\n");
}
}
}}
}
}
}
return msg;
SOLUTION #1
Please contact Quest Support so that an Engineer can assist with running a script to determine what Rules need to be looked at that have an Email Action defined but no title and message body. These will need to be fixed manually.
SOLUTION #2
Customer may be configuring Email notification for database alarms through the Rules Management area of the Foglight console. This configuration has been deprecated in recent release of the Foglight for Database cartridges. Email configuration for database agent alarms should now be configured in the Global Administration - Alarms area for the database instance(s).
© ALL RIGHTS RESERVED. Feedback 使用条款 隐私 Cookie Preference Center