Quantcast
Channel: THWACK: Document List - Network Performance Monitor
Viewing all articles
Browse latest Browse all 1956

MOD/HACK - NPM 12 Notification on Paused Alert Actions

$
0
0

To prevent prolonged periods where Alert Actions are paused, you can use this tweak to have a notification added to the header of your NPM web page. This hack is surely not supported by SolarWinds, use it at your own risk... until they provide a permanent feature as requested here: "Pause all alerts action" should trigger the addition of a message to the Notification section

 

1 - Create a new Notification Type:

INSERT INTO [SolarWindsOrion].[dbo].[NotificationItemTypes]    (    [TypeID],        [TypeName],        [Module],        [DetailsUrl],        [Icon],        [DisplayAs]    )
VALUES     (    NEWID(),        'PausedAlertActionsNotification',        'Orion.Core',        '/Orion/NetPerfMon/Alerts.aspx',        '/Orion/images/NotificationImages/notification_tip_suggestion.gif',        'LatestItemTitle'    )

 

2 - Do a query to find out the newly generated GUID and validate step #1: Note down the resulting GUID, as we will reuse it in the next steps

SELECT         [TypeID],        [TypeName],        [Module],        [Caption],        [DetailsUrl],        [DetailsCaption],        [Icon],        [Description],        [DisplayAs],        [CustomDismissButtonText],        [HideDismissButton]
FROM [SolarWindsOrion].[dbo].[NotificationItemTypes]
WHERE [TypeName] = 'PausedAlertActionsNotification'

 

3 - Insert permissions for newly created Notification Type: Replace the content in line #6 with the GUID givent at Step #2

INSERT INTO [SolarWindsOrion].[dbo].[NotificationTypePermissions]    (    [NotificationTypeID],        [RequiredRoleID]    )
VALUES     (    '26484C48-F474-4B05-BB9E-14CCFBF36609',        '1'    )

 

4 - Restart the SolarWinds services for this permission to be taken into account

 

5 - Create a test notification: Replace the content in line #14 with the GUID givent at Step #2

INSERT INTO [SolarWindsOrion].[dbo].[NotificationItems]    (    [NotificationID],        [Title],        [CreatedAt],        [Ignored],        [NotificationTypeID],        [Url]    )
VALUES     (    NEWID(),        'All Alerts actions were paused',        GETUTCDATE(),        '0',        '26484C48-F474-4B05-BB9E-14CCFBF36609',        '/Orion/NetPerfMon/Alerts.aspx'    )

 

6 - Refresh your homepage the notification should be there!

 

7 - Create a job to automagically trigger a notification when alerts are paused: Once again, replace the GUID at line #23 according to your previous results.

USE [SolarWindsOrion]
GO

CREATE TRIGGER PausedAlertActionsNotificationSetTrigger 
    ON [SolarWindsOrion].[dbo].[Settings]
AFTER UPDATE
AS 
BEGIN    SET NOCOUNT ON;    INSERT INTO [SolarWindsOrion].[dbo].[NotificationItems]         (    [NotificationID],             [Title],             [CreatedAt],                [Ignored],             [NotificationTypeID],            [Url]        )    VALUES         (    NEWID(),            'All Alerts actions were paused',            GETUTCDATE(),            '0',            '26484C48-F474-4B05-BB9E-14CCFBF36609',            '/Orion/NetPerfMon/Alerts.aspx'    )    SELECT I.[SettingID], I.[CurrentValue]    FROM [SolarWindsOrion].[dbo].[Settings] s    INNER JOIN inserted i on s.SettingID=i.SettingID        AND i.SettingID='AlertEngine-PauseActionsOfAllAlerts'        AND i.CurrentValue='1'
END

 

The trigger will appear under dbo.Settings/Triggers:

 

8 - Navigate to YourServer/Orion/Netperfmon/Alerts.aspx and pause actions of all alerts:

 

9 - Enjoy!

 

 

Possible improvements:

  • Auto-remove the notification when the condition is no longer true.
  • Hide the dismiss button so everyone has visibility on this status
  • Add desktop notification, audit trail and/or SW event entries.

Viewing all articles
Browse latest Browse all 1956

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>