SolarWinds NPM Integration Guide – Legacy

SolarWinds Network Performance Monitor (NPM) is a powerful network fault and availability management system that makes it easy to quickly detect, diagnose, and resolve performance issues before outages occur. SolarWinds NPM tracks response time, availability, uptime of routers and displays performance statistics in real time, and notifies users when something goes awry. PagerDuty and SolarWinds NPM work together to provide better incident alerting and easy-to-manage on-call schedules to SolarWinds’ network monitoring. PagerDuty alerts can be sent by a wide breadth of contact methods to ensure quick and reliable responses.

Compatibility

This guide will walk you through the process of integrating SolarWinds NPM versions before 11.5 with PagerDuty. If you are using SolarWinds NPM version 11.5 or newer, or another SolarWinds product, you should use this guide instead.

In PagerDuty

  1. From the Configuration menu, select Services.

  2. On your Services page:If you are creating a new service for your integration, click +Add New Service.If you are adding your integration to an existing service, click the name of the service you want to add the integration to. Then click the Integrations tab and click the +New Integration button.

RS-Add-New-Service
RS-Add-Integration-Existing-Service

  1. Select your app from the Integration Type menu and enter an Integration Name.If you are creating a new service for your integration, in General Settings, enter a Name for your new service. Then, in Incident Settings, specify the Escalation Policy, Notification Urgency, and Incident Behavior for your new service.

  2. Click the Add Service or Add Integration button to save your new integration. You will be redirected to the Integrations page for your service.
    RS-Integration-Settings

  3. Copy the Integration Key for your new integration: RS_API_pd_3

On Your SolarWinds NPM Server

  1. Right-click action.vbs and download/save the file to C:\PagerDuty on your SolarWinds NPM server, creating the directory if needed.

  2. Open the Advanced Alert Manager by going to Start > Programs > SolarWinds Orion > Alerting, Reporting, and Mapping > Advanced Alert Manager.

  3. Either select an existing alert or create a new alert. If configuring a new alert, set up the Alert Name, Trigger Condition and Reset Condition fields.

  4. Go to the Trigger Actions tab and click Add New Action.

  5. Select Execute an External VB Script and click OK.

  6. Make sure the VB Script Interpreter is set to CScript.exe and paste in the following text into the VB Script to execute field, making sure to replace YOUR-INTEGRATION-KEY with your Integration Key from above. Click OK to save your action.

    "C:\PagerDuty\action.vbs" §YOUR-INTEGRATION-KEY§trigger§${AlertName}§${AlertID}§${ObjectID}§${NodeName}§${NodeID}§${Severity}

  7. Go to the Reset Actions tab and click Add New Action.

  8. Select Execute an External VB Script and click OK.

  9. Make sure the VB Script Interpreter is set to CScript.exe and paste in the following text into the VB Script to execute field, making sure to replace YOUR-INTEGRATION-KEY with your Integration Key from above. Click OK to save your action.

    "C:\PagerDuty\action.vbs" §YOUR-INTEGRATION-KEY§resolve§${AlertName}§${AlertID}§${ObjectID}§${NodeName}§${NodeID}§${Severity}

  10. Click OK to save your alert.

  11. Click OK to return back to the Manage Alerts page.

  12. To test your alert, select it from the list and click Test.

  13. Select a node for the test, then click Test Alert Trigger.

    It takes a moment for the test to initialize, but you should get an alert in PagerDuty momentarily.

  14. You can now run a test to clear the alert. Click Clear Alert Test and then click Test Alert Reset.

    The incident in PagerDuty should be resolved shortly.

  15. Congratulations! You’ve now configured SolarWinds NPM to integrate with PagerDuty.

FAQ

How do I setup SolarWinds NPM to use multiple PagerDuty services?

In order to tie SolarWinds NPM to multiple PagerDuty services, you will repeat all of the steps of this guide (except downloading the action.vbs file, as it can be used for all alerts). Be sure to use the correct PagerDuty Integration Key!

Can I customize the message that is sent from SolarWinds to PagerDuty?

Yes, you can customize the message that is sent to you. If you feel comfortable editing VBScript, you can edit action.vbs to send different information to PagerDuty. You can modify the SolarWinds variables passed to the VBScript by going back to the Advanced Alert Manager and going to the alert you would like to edit.

Go to the Trigger Actions or Resolve Actions tab, then double click on the PagerDuty action. From here you can edit the variables sent to PagerDuty by altering the command line. Separate any arguments with the section sign (U+00A7) unicode symbol, like the existing arguments. This is required so that any argument can contain spaces and quotes, your arguments should not contain the section sign unicode symbol. Avoid using the file picker as this will remove all of the command line arguments. The full list of available variables can be found here. If you would like to change how your incidents are de-duplicated, you can modify the incident_key in the VBScript.