I'm using Log Analyzer to capture SNMP traps and turn them into alerts. Which is working. When the trap comes in an alert is triggered. The issue I'm having is in creating a meaningful alert message. The trap message has a lot of unnecessary information in it. I'm trying to use SQL SUBSTRING and CHARINDEX to manipulate the string. Instead of executing the SQL functions its printing it out as text in the message.
So specific command is:
${SQL:SELECT SUBSTRING('${N=OLM.AlertingMacros;M=OLMAlertMessage.EventMessage}', CHARINDEX('enterprises.99998.25.3.6 = ', '${N=OLM.AlertingMacros;M=OLMAlertMessage.EventMessage}')+27, CHARINDEX(', enterprises.99998.25.3.7 =', '${N=OLM.AlertingMacros;M=OLMAlertMessage.EventMessage}') - CHARINDEX('enterprises.99998.25.3.6 = ', '${N=OLM.AlertingMacros;M=OLMAlertMessage.EventMessage}'))
Which is giving me output (I put the exact output but it’s very long):
${SQL:SELECT SUBSTRING('<SNMP MESSAGE STRING>', CHARINDEX('enterprises.99998.25.3.6 = ','<SNMP MESSAGE STRING>')+27, CHARINDEX('<SNMP MESSAGE STRING>') - CHARINDEX('<SNMP MESSAGE STRING>'))
The SNMP MESSAGE STRING is a variable length.
Any help would be greatly appreciated. Thanks.