Slack - Alert Integration - Component

Version 14

    This article shows how to setup this script as an alert action. Please take time to review the main overview article if you have not already done so: Slack Alert Integration - Overview. The main overview article contains information necessary to completely setup this script.

     

    This script is specifically designed for component based alerts.

    9.png

     

    In the Trigger Actions I added 'Execute an External Program' action.

    3.png

     

    This is the full text in the 'Network path to external program' field.

    • C:\windows\system32\windowspowershell\v1.0\powershell.exe -ExecutionPolicy unrestricted -command "<C:\path\to\script>\Slack_Alert_Trigger_Action_Component.ps1 '${N=SwisEntity;M=Application.Node.DisplayName} ' '${N=SwisEntity;M=Application.ApplicationAlert.ApplicationName}' '${N=SwisEntity;M=ComponentAlert.ComponentName} ' '${N=SwisEntity;M=ComponentAlert.ComponentAvailability}' '${N=Alerting;M=AlertDetailsUrl}' '${N=SwisEntity;M=Application.Node.DetailsUrl}' '${N=SwisEntity;M=DetailsUrl}' '${N=Alerting;M=AcknowledgeUrl}' '${N=SwisEntity;M=ComponentAlert.StatisticData}' '${N=Generic;M=DateTime;F=OriginalValue}'"

     

    **You will need to update the <C:\path\to\script> in the above line to the location that you have the script saved.**

     

    I'm passing in the following Orion variables:

    • Node Name: ${N=SwisEntity;M=Application.Node.DisplayName}
    • Application Name: ${N=SwisEntity;M=Application.ApplicationAlert.ApplicationName}
    • Component Name: ${N=SwisEntity;M=ComponentAlert.ComponentName}
    • Component Status: ${N=SwisEntity;M=ComponentAlert.ComponentAvailability}
    • Node Details Page: ${N=SwisEntity;M=Application.Node.DetailsUrl}
    • Alert Details Page: ${N=Alerting;M=AlertDetailsUrl}
    • Application Details Page: ${N=SwisEntity;M=DetailsUrl}
    • Auto Acknowledge URL: ${N=Alerting;M=AcknowledgeUrl}
    • Component Statistic: ${N=SwisEntity;M=ComponentAlert.StatisticData}
    • Orion Date/Time: ${N=Generic;M=DateTime;F=OriginalValue}

     

    Once that alert action is completed then copy it to Reset Actions.

     

    Finish editing the alert and you should be done.

     

    **Change Log**

    • 2016-03-02 : Initial Release
    • 2016-03-18 : Added Alert Name variable into action. Updated and cleaned up script.
    • 2016-03-22 : Removed Alert Name variable from alert action.
    • 2016-05-06 : Major overhaul. revamped message to Slack attachments for better formatting. Please also update your 'Network path to external program' in the alert action as some variables have been changed/added.

     

    If you find this useful feel free to rate this article.