Turn any signal into insight and action. See how PagerDuty Digital Operations Management Platform integrates machine data and human intelligence to improve visibility and agility across organizations.
Connect insights to real-time action by aligning teams through the shared language of business impact.
Check out the latest products we’ve been working on—including event intelligence, machine learning, response automation, on-call, analytics, operations health management, integrations, and more.
Digital Operations Management arms organizations with the insights needed to turn data into opportunity across every operational use case, from DevOps, ITOps, Security, Support, and beyond.
Over 300 Integrations
Discover DevOps best practices with our library of webinars, whitepapers, reports, and much more.
Learn best practices and get support help with resources from our award-winning support team.
See how PagerDuty works with our live product demo — twice a week, every week.
We've created a maturity model to assist on the journey to digital operations excellence. Take our short assessment to find out where your team falls!
Interactive, simple-to-use API and technical documentation enables users to easily try updates and extend PagerDuty.
Engage with users and PagerDuty experts from our global community of 200k+ users. Become a member, connect, and share insights for success.
Get all your PagerDuty-related questions answered by exploring our in-depth support documentation and community forums.
Have you ever worked on a team where it was a challenge to give constructive feedback or confidently share ideas? At PagerDuty Summit 2018, Patrick...
PagerDuty helps organizations transform their digital operations. Learn more about PagerDuty's mission and what we do.
Meet our experienced and passionate executive team.
We are risk-taking innovators dedicated to delivering amazing products and delighting customers. Join us and do the best work of your career.
With the PagerDuty Foundation, we are committed to doing our part in giving back to the community.
WhatsUp Gold provides a unified view and fully encompasses heterogeneous environments and vendors so you can see everything on your network. Improve your network performance and improve uptime throughout today’s diverse networks by monitoring and analyzing everything from one actionable, unified dashboard.
This integration works by logging WhatsUp Gold alerts to a file containing JSON formatted for our Events API. A VBScript then iterates through every file in the queue directory where alerts are written to and sends the JSON to PagerDuty, deleting the alert file after it has been accepted by the server.
This guide and VBScript were written and tested on Windows Server 2012 R2 with WhatsUp Gold 2017. Earlier versions of WhatsUp Gold which do not support logging alerts to a file in the required format can be configured to send alerts to PagerDuty using an email integration instead.
Go to the Configuration menu and select Services.
On the 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.
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.
Click the Add Service or Add Integration button to save your new integration. You will be redirected to the Integrations page for your service.
Copy the Integration Key for your new integration.
Create the following directories on your WhatsUp Gold server’s C: drive:
Download the following VBScript, saving it to C:\PagerDuty on your WhatsUp Gold server.
Log in to the WhatsUp Gold web interface as an admin, then go to Settings → Actions & Alerts → Actions and Policies.
Create a new Log To Text File action in the Action Library.
Give the new action a Name such as “Log Alert to PagerDuty Queue”, set the Log file path to C:\PagerDuty\Queue\%Device.HostName_Down.txt, change the Log file write mode to Overwrite, then copy and paste the following into the Log Message field:
"incident_key": "%Device.Address Monitors Down",
"description": "%Device.ActiveMonitorDownNames %Device.State on %Device.HostName",
"Monitors that are down": "%Device.ActiveMonitorDownNames",
"Monitors that are up": "%Device.ActiveMonitorUpNames",
"Host Name": "%Device.HostName",
"IP Address": "%Device.Address"
Be sure to replace YOUR-INTEGRATION-KEY-HERE with the PagerDuty integration key you created earlier.
Create another new Log To Text File action in the Action Library. Give this new action a Name such as “Log Recovery to PagerDuty Queue”, set the Log file path to C:\PagerDuty\Queue\%Device.HostName_Up.txt, change the Log file write mode to Overwrite, then copy and paste the following into the Log Message field:
"incident_key": "%Device.Address Monitors Down",
"description": "%Device.ActiveMonitorDownNames %Device.State on %Device.HostName"
Create a new Program Action and give the new action a Name such as “Execute PagerDuty VBScript”, set the Program file name to C:\Windows\System32\cscript.exe, the Working path to C:\PagerDuty, and the Program arguments to //B "C:\PagerDuty\PagerDuty.vbs".
Create a new Action Policy and give it a Name such as “PagerDuty” (or edit an existing policy already in use by the devices you want to start triggering alerts for in PagerDuty) then add the PagerDuty actions you created for both Up and Down states. The Log Alert action should be performed for the Down state, and the Log Recovery action should be performed for the Up state, while the Program Action (VBScript execution) should be performed for both states, but after the Log Alert or Log Recovery action has been performed.
Configure your devices to use this Action Policy by going to My Network, selecting a device, and clicking Monitor setup. Go to the Actions and Action Policies tab and select Apply the following Action Policy, then choose the Action Policy you created or updated in the previous step.
Open Windows Task Scheduler and click Create Task… on the Actions sidebar. Give the task a Name, like PagerDuty, and select Run whether user is logged in or not.
Switch to the Triggers tab and click New…, then click the drop down list for Begin the task and select At startup. Now check the box labeled Repeat task every: and type in 1 minute (this option isn’t in the list, you must manually type it in), then change the duration to Indefinitely and click OK. Repeat these steps, only selecting At task creation/modification the second time around.
Select the Actions tab and click New…. Set the Program/script to C:\Windows\System32\cscript.exe and Add arguments to //B "C:\PagerDuty\PagerDuty.vbs", then click OK.
Congratulations! WhatsUp Gold will now be able to trigger and resolve incidents in PagerDuty, and the scheduled task will re-try sending events in case they aren’t successfully sent in the first attempt (i.e. due to connectivity issues).
You can customize the alert data sent to PagerDuty by changing the Log Message in your Log To Text File action. The file should be logged to C:\PagerDuty\Queue with a .txt file extension, and the content should be JSON that is formatted for our Events API.
Special Characters: If you have an alert which uses characters that will affect the JSON output, such as a quotation mark, then you will need to escape those characters with a backslash, or modify the VBScript to handle them. For example, if you add quotation marks to an alert, add a backslash (\) before them so they look like \" in your Log To Text File action. Other special characters can be escaped if needed by modifying the VBScript and using the Replace method, which is what we use in the script to escape backslashes, as backslashes have a special purpose in JSON as the escape character, but are also used in alerts containing Windows paths.
Lastly, you’ll want to make sure there is a Program Action configured that executes "C:\PagerDuty\PagerDuty.vbs" using the CScript.exe interpreter. This allows WhatsUp Gold to send the alert to PagerDuty immediately, rather than having to wait for the scheduled task to run before it gets sent to us.
Yes. Simply duplicate your Log To Text File actions and modify them to use a different PagerDuty integration key, create a new Action Policy that uses these new actions, then configure the desired devices to use this alternate Action Policy.
The VBScript will log errors to the Windows Application Event Log to help resolve problems with alerts not being sent to PagerDuty. You can also manually execute the VBScript via Command Prompt using CScript.exe "C:\PagerDuty\PagerDuty.vbs" to see what happens to alert files in the queue step-by-step.
If you would like the VBScript and alert queue directory to reside somewhere other than C:\PagerDuty, you will need to modify the QueuePath variable in the VBScript from C:\PagerDuty\Queue to point to the location where you would like the alert queue to reside.
Although the VBScript can be executed from a shared folder or mapped network drive, we recommend using a local copy and alert queue on each system in case the host with the script becomes unavailable.
For example, if you configure WhatsUp Gold to write alerts to a queue on a file server and execute the VBScript hosted on that server, and that server goes down for any reason, WhatsUp Gold will not be able to write alert files or execute the VBScript to trigger an incident in PagerDuty for any WhatsUp Gold alerts until the file server is available again.
If PagerDuty can’t be reached for any reason, events will be stored in C:\PagerDuty\Queue. The scheduled task to execute the VBScript will attempt to re-send the events at one minute intervals, so your WhatsUp Gold server should begin sending incidents to PagerDuty within a minute of being able to access the internet again.
600 Townsend St., #200
San Francisco, CA 94103
905 King Street West, Suite 600
Toronto, ON, M6K 3G9, Canada
1416 NW 46th St., St. 301
Seattle, WA 98107
5 Martin Place
1 Fore St,
London EC2Y 9DT
© 2009 - 2019