On the DPA start page we have this nice overview table of how all instances are. Wouldn't it be nice to have that in an Orion view as well!
The number of widgets in Orion for DPA information is a bit limited. So is also the information in Orion database about DPA status. Almost all info for this exist though. So we created a custom table showing the "DPA Overview" in Orion
This is how you create it:
- Add a new "Custom Table" widget.
- Add a "Advanced SWQL datasource" with below code
SELECT CASE WHEN I.GroupId=1 THEN 'Group 1' WHEN I.GroupId=2 THEN 'Group 2' WHEN I.GroupId=3 THEN 'Group 3' WHEN I.GroupId=4 THEN 'Group 4' ELSE 'NoGroup' END AS [Group], I.Name AS [DBNameToSortBy], CONCAT('<A href="https://10.10.10.10:8124/iwc/database.iwc?db_id=',I.DatabaseInstanceID,'" target="_blank">', I.Name, '</A>') AS [DB Instance], CASE WHEN PO.WaitTimeCategory=0 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_normal_0.png">' WHEN PO.WaitTimeCategory=1 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_normal_1.png">' WHEN PO.WaitTimeCategory=2 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_normal_2.png">' WHEN PO.WaitTimeCategory=3 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_normal_3.png">' WHEN PO.WaitTimeCategory=4 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_normal_4.png">' WHEN PO.WaitTimeCategory=5 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_normal_5.png">' WHEN PO.WaitTimeCategory=6 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_critical_1.png">' WHEN PO.WaitTimeCategory=7 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_critical_2.png">' WHEN PO.WaitTimeCategory=8 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_critical_3.png">' WHEN PO.WaitTimeCategory=9 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_critical_4.png">' WHEN PO.WaitTimeCategory=10 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_critical_5.png">' WHEN PO.WaitTimeCategory=11 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_warning_1.png">' WHEN PO.WaitTimeCategory=12 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_warning_2.png">' WHEN PO.WaitTimeCategory=13 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_warning_3.png">' WHEN PO.WaitTimeCategory=14 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_warning_4.png">' WHEN PO.WaitTimeCategory=15 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_warning_5.png">' WHEN PO.WaitTimeCategory=16 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_critical_1.png">' WHEN PO.WaitTimeCategory=17 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_critical_2.png">' WHEN PO.WaitTimeCategory=18 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_critical_3.png">' WHEN PO.WaitTimeCategory=19 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_critical_4.png">' WHEN PO.WaitTimeCategory=20 THEN '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_critical_5.png">' ELSE '<img src="/Orion/DPA/images/StatusIcons/WaitTimeMeter_unknown.png">' END AS [WaitStatus], CASE WHEN PO.CPUAlarmLevel=2 THEN '/Orion/DPA/images/StatusIcons/performance-normal.png' WHEN PO.CPUAlarmLevel=3 THEN '/Orion/DPA/images/StatusIcons/performance-unknown.png' WHEN PO.CPUAlarmLevel=4 THEN '/Orion/DPA/images/StatusIcons/performance-warning.png' WHEN PO.CPUAlarmLevel=5 THEN '/Orion/DPA/images/StatusIcons/performance-critical.png' END AS [CPU], CASE WHEN PO.MemoryAlarmLevel=2 THEN '/Orion/DPA/images/StatusIcons/performance-normal.png' WHEN PO.MemoryAlarmLevel=3 THEN '/Orion/DPA/images/StatusIcons/performance-unknown.png' WHEN PO.MemoryAlarmLevel=4 THEN '/Orion/DPA/images/StatusIcons/performance-warning.png' WHEN PO.MemoryAlarmLevel=5 THEN '/Orion/DPA/images/StatusIcons/performance-critical.png' END AS [Memory], CASE WHEN PO.DiskAlarmLevel=2 THEN '/Orion/DPA/images/StatusIcons/performance-normal.png' WHEN PO.DiskAlarmLevel=3 THEN '/Orion/DPA/images/StatusIcons/performance-unknown.png' WHEN PO.DiskAlarmLevel=4 THEN '/Orion/DPA/images/StatusIcons/performance-warning.png' WHEN PO.DiskAlarmLevel=5 THEN '/Orion/DPA/images/StatusIcons/performance-critical.png' END AS [Disk], CASE WHEN PO.SessionAlarmLevel=2 THEN '/Orion/DPA/images/StatusIcons/performance-normal.png' WHEN PO.SessionAlarmLevel=3 THEN '/Orion/DPA/images/StatusIcons/performance-unknown.png' WHEN PO.SessionAlarmLevel=4 THEN '/Orion/DPA/images/StatusIcons/performance-warning.png' WHEN PO.SessionAlarmLevel=5 THEN '/Orion/DPA/images/StatusIcons/performance-critical.png' END AS [Session] FROM Orion.Dpa.DatabaseInstance I INNER JOIN DPA.PerformanceOverview PO ON I.DatabaseInstanceID=PO.DatabaseId WHERE I.IsLicensed=1
Two notes: I couldn't find DPA groupnames in Orion so you have to edit those yourself, same with url to your DPA website
- Add all the columns in the datasource
- On column "DB Instance" and "WaitStats" - check "alllow HTML tags"
- On column "Disk", "Memory" and "Session" - Add display setting "General Icon" and change setting to "{0}"
- On column "DBNameToSortBy" - check "Hide this column...."
- Group the result by "Group" and sort by "DBNameToSortBy"
- Arrange the column as you like
- Set at Title
- You probably want to do a "Preview" and set "custom column width"
The result will be something like below
- Now we have to copy the "wait" images from DPA to Orion: (change paths to match your environment)
- On the DPA-server, copy all PNG-filer like C:\Program Files\SolarWinds\DPA\iwc\tomcat\webapps\iwc\pages\images\WaitTimeMeter_*
- Paste them into the Orion-web server into "C:\inetpub\SolarWinds\Orion\DPA\images\StatusIcons" "C:\Program Files (x86)\SolarWinds\Orion\Web\Orion\DPA\images"
Thats is!
Hope you like it!