sync
This commit is contained in:
437
TPDT-268 - ACP in task sequence/dba_alerts/Replications.sql
Normal file
437
TPDT-268 - ACP in task sequence/dba_alerts/Replications.sql
Normal file
@@ -0,0 +1,437 @@
|
||||
USE [msdb];
|
||||
GO
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM master.cfg.InstanceContext WHERE Business IN ('TPPHAR','TPCENT'))
|
||||
BEGIN
|
||||
|
||||
IF EXISTS (SELECT 1 FROM sys.databases WHERE name = 'distribution')
|
||||
BEGIN
|
||||
|
||||
DECLARE @OperatorName sysname,
|
||||
@AlertName sysname;
|
||||
|
||||
SET @OperatorName = N'DBA_operator';
|
||||
|
||||
IF NOT EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysoperators
|
||||
WHERE name = @OperatorName)
|
||||
EXEC msdb.dbo.sp_add_operator @name = @OperatorName,
|
||||
@enabled = 1,
|
||||
@weekday_pager_start_time = 90000,
|
||||
@weekday_pager_end_time = 180000,
|
||||
@saturday_pager_start_time = 90000,
|
||||
@saturday_pager_end_time = 180000,
|
||||
@sunday_pager_start_time = 90000,
|
||||
@sunday_pager_end_time = 180000,
|
||||
@pager_days = 0,
|
||||
@email_address = N'Gal_SE_DBA@galenica.com',
|
||||
@category_name = N'[Uncategorized]';
|
||||
|
||||
SET @AlertName = 'Replication Warning: Transactional replication latency (Threshold: latency)';
|
||||
|
||||
IF EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts
|
||||
WHERE ( name = @AlertName
|
||||
AND enabled = 0)
|
||||
OR ( name = @AlertName
|
||||
AND has_notification = 0))
|
||||
EXEC msdb.dbo.sp_delete_alert @name = @AlertName;
|
||||
|
||||
IF NOT EXISTS (SELECT name FROM msdb.dbo.sysalerts WHERE name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_alert @name = @AlertName,
|
||||
@message_id = 14161,
|
||||
@severity = 0,
|
||||
@enabled = 1,
|
||||
@delay_between_responses = 3600,
|
||||
@include_event_description_in = 5,
|
||||
@category_name = N'Replication',
|
||||
@job_id = N'00000000-0000-0000-0000-000000000000';
|
||||
|
||||
IF NOT EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts AS sa
|
||||
INNER JOIN msdb.dbo.sysnotifications AS sn
|
||||
ON sa.id = sn.alert_id
|
||||
WHERE sa.name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_notification @alert_name = @AlertName,
|
||||
@operator_name = @OperatorName,
|
||||
@notification_method = 1;
|
||||
|
||||
SET @AlertName = 'Replication Warning: Subscription expiration (Threshold: expiration)';
|
||||
|
||||
IF EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts
|
||||
WHERE ( name = @AlertName
|
||||
AND enabled = 0)
|
||||
OR ( name = @AlertName
|
||||
AND has_notification = 0))
|
||||
EXEC msdb.dbo.sp_delete_alert @name = @AlertName;
|
||||
|
||||
IF NOT EXISTS (SELECT name FROM msdb.dbo.sysalerts WHERE name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_alert @name = @AlertName,
|
||||
@message_id = 14160,
|
||||
@severity = 0,
|
||||
@enabled = 1,
|
||||
@delay_between_responses = 3600,
|
||||
@include_event_description_in = 5,
|
||||
@category_name = N'Replication',
|
||||
@job_id = N'00000000-0000-0000-0000-000000000000';
|
||||
|
||||
IF NOT EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts AS sa
|
||||
INNER JOIN msdb.dbo.sysnotifications AS sn
|
||||
ON sa.id = sn.alert_id
|
||||
WHERE sa.name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_notification @alert_name = @AlertName,
|
||||
@operator_name = @OperatorName,
|
||||
@notification_method = 1;
|
||||
|
||||
SET @AlertName = 'Replication Warning: Slow merge over LAN connection (Threshold: mergefastrunspeed)';
|
||||
|
||||
IF EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts
|
||||
WHERE ( name = @AlertName
|
||||
AND enabled = 0)
|
||||
OR ( name = @AlertName
|
||||
AND has_notification = 0))
|
||||
EXEC msdb.dbo.sp_delete_alert @name = @AlertName;
|
||||
|
||||
IF NOT EXISTS (SELECT name FROM msdb.dbo.sysalerts WHERE name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_alert @name = @AlertName,
|
||||
@message_id = 14164,
|
||||
@severity = 0,
|
||||
@enabled = 1,
|
||||
@delay_between_responses = 3600,
|
||||
@include_event_description_in = 5,
|
||||
@category_name = N'Replication',
|
||||
@job_id = N'00000000-0000-0000-0000-000000000000';
|
||||
|
||||
IF NOT EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts AS sa
|
||||
INNER JOIN msdb.dbo.sysnotifications AS sn
|
||||
ON sa.id = sn.alert_id
|
||||
WHERE sa.name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_notification @alert_name = @AlertName,
|
||||
@operator_name = @OperatorName,
|
||||
@notification_method = 1;
|
||||
|
||||
SET @AlertName = 'Replication Warning: Slow merge over dialup connection (Threshold: mergeslowrunspeed)';
|
||||
|
||||
IF EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts
|
||||
WHERE ( name = @AlertName
|
||||
AND enabled = 0)
|
||||
OR ( name = @AlertName
|
||||
AND has_notification = 0))
|
||||
EXEC msdb.dbo.sp_delete_alert @name = @AlertName;
|
||||
|
||||
IF NOT EXISTS (SELECT name FROM msdb.dbo.sysalerts WHERE name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_alert @name = @AlertName,
|
||||
@message_id = 14165,
|
||||
@severity = 0,
|
||||
@enabled = 1,
|
||||
@delay_between_responses = 3600,
|
||||
@include_event_description_in = 5,
|
||||
@category_name = N'Replication',
|
||||
@job_id = N'00000000-0000-0000-0000-000000000000';
|
||||
|
||||
IF NOT EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts AS sa
|
||||
INNER JOIN msdb.dbo.sysnotifications AS sn
|
||||
ON sa.id = sn.alert_id
|
||||
WHERE sa.name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_notification @alert_name = @AlertName,
|
||||
@operator_name = @OperatorName,
|
||||
@notification_method = 1;
|
||||
|
||||
SET @AlertName = 'Replication Warning: Long merge over LAN connection (Threshold: mergefastrunduration)';
|
||||
|
||||
IF EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts
|
||||
WHERE ( name = @AlertName
|
||||
AND enabled = 0)
|
||||
OR ( name = @AlertName
|
||||
AND has_notification = 0))
|
||||
EXEC msdb.dbo.sp_delete_alert @name = @AlertName;
|
||||
|
||||
IF NOT EXISTS (SELECT name FROM msdb.dbo.sysalerts WHERE name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_alert @name = @AlertName,
|
||||
@message_id = 14162,
|
||||
@severity = 0,
|
||||
@enabled = 1,
|
||||
@delay_between_responses = 3600,
|
||||
@include_event_description_in = 5,
|
||||
@category_name = N'Replication',
|
||||
@job_id = N'00000000-0000-0000-0000-000000000000';
|
||||
|
||||
IF NOT EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts AS sa
|
||||
INNER JOIN msdb.dbo.sysnotifications AS sn
|
||||
ON sa.id = sn.alert_id
|
||||
WHERE sa.name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_notification @alert_name = @AlertName,
|
||||
@operator_name = @OperatorName,
|
||||
@notification_method = 1;
|
||||
|
||||
SET @AlertName = 'Replication Warning: Long merge over dialup connection (Threshold: mergeslowrunduration)';
|
||||
|
||||
IF EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts
|
||||
WHERE ( name = @AlertName
|
||||
AND enabled = 0)
|
||||
OR ( name = @AlertName
|
||||
AND has_notification = 0))
|
||||
EXEC msdb.dbo.sp_delete_alert @name = @AlertName;
|
||||
|
||||
IF NOT EXISTS (SELECT name FROM msdb.dbo.sysalerts WHERE name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_alert @name = @AlertName,
|
||||
@message_id = 14163,
|
||||
@severity = 0,
|
||||
@enabled = 1,
|
||||
@delay_between_responses = 3600,
|
||||
@include_event_description_in = 5,
|
||||
@category_name = N'Replication',
|
||||
@job_id = N'00000000-0000-0000-0000-000000000000';
|
||||
|
||||
IF NOT EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts AS sa
|
||||
INNER JOIN msdb.dbo.sysnotifications AS sn
|
||||
ON sa.id = sn.alert_id
|
||||
WHERE sa.name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_notification @alert_name = @AlertName,
|
||||
@operator_name = @OperatorName,
|
||||
@notification_method = 1;
|
||||
|
||||
SET @AlertName = 'Replication: agent custom shutdown';
|
||||
|
||||
IF EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts
|
||||
WHERE ( name = @AlertName
|
||||
AND enabled = 0)
|
||||
OR ( name = @AlertName
|
||||
AND has_notification = 0))
|
||||
EXEC msdb.dbo.sp_delete_alert @name = @AlertName;
|
||||
|
||||
IF NOT EXISTS (SELECT name FROM msdb.dbo.sysalerts WHERE name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_alert @name = @AlertName,
|
||||
@message_id = 20578,
|
||||
@severity = 0,
|
||||
@enabled = 1,
|
||||
@delay_between_responses = 3600,
|
||||
@include_event_description_in = 5,
|
||||
@category_name = N'Replication',
|
||||
@job_id = N'00000000-0000-0000-0000-000000000000';
|
||||
|
||||
IF NOT EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts AS sa
|
||||
INNER JOIN msdb.dbo.sysnotifications AS sn
|
||||
ON sa.id = sn.alert_id
|
||||
WHERE sa.name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_notification @alert_name = @AlertName,
|
||||
@operator_name = @OperatorName,
|
||||
@notification_method = 1;
|
||||
|
||||
SET @AlertName = 'Replication: agent failure';
|
||||
|
||||
IF EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts
|
||||
WHERE ( name = @AlertName
|
||||
AND enabled = 0)
|
||||
OR ( name = @AlertName
|
||||
AND has_notification = 0))
|
||||
EXEC msdb.dbo.sp_delete_alert @name = @AlertName;
|
||||
|
||||
IF NOT EXISTS (SELECT name FROM msdb.dbo.sysalerts WHERE name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_alert @name = @AlertName,
|
||||
@message_id = 14151,
|
||||
@severity = 0,
|
||||
@enabled = 1,
|
||||
@delay_between_responses = 3600,
|
||||
@include_event_description_in = 5,
|
||||
@category_name = N'Replication',
|
||||
@job_id = N'00000000-0000-0000-0000-000000000000';
|
||||
|
||||
IF NOT EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts AS sa
|
||||
INNER JOIN msdb.dbo.sysnotifications AS sn
|
||||
ON sa.id = sn.alert_id
|
||||
WHERE sa.name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_notification @alert_name = @AlertName,
|
||||
@operator_name = @OperatorName,
|
||||
@notification_method = 1;
|
||||
|
||||
SET @AlertName = 'Replication: agent retry';
|
||||
|
||||
IF EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts
|
||||
WHERE ( name = @AlertName
|
||||
AND enabled = 0)
|
||||
OR ( name = @AlertName
|
||||
AND has_notification = 0))
|
||||
EXEC msdb.dbo.sp_delete_alert @name = @AlertName;
|
||||
|
||||
IF NOT EXISTS (SELECT name FROM msdb.dbo.sysalerts WHERE name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_alert @name = @AlertName,
|
||||
@message_id = 14152,
|
||||
@severity = 0,
|
||||
@enabled = 1,
|
||||
@delay_between_responses = 3600,
|
||||
@include_event_description_in = 5,
|
||||
@category_name = N'Replication',
|
||||
@job_id = N'00000000-0000-0000-0000-000000000000';
|
||||
|
||||
IF NOT EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts AS sa
|
||||
INNER JOIN msdb.dbo.sysnotifications AS sn
|
||||
ON sa.id = sn.alert_id
|
||||
WHERE sa.name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_notification @alert_name = @AlertName,
|
||||
@operator_name = @OperatorName,
|
||||
@notification_method = 1;
|
||||
|
||||
SET @AlertName = 'Replication: agent success';
|
||||
|
||||
IF EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts
|
||||
WHERE ( name = @AlertName
|
||||
AND enabled = 0)
|
||||
OR ( name = @AlertName
|
||||
AND has_notification = 0))
|
||||
EXEC msdb.dbo.sp_delete_alert @name = @AlertName;
|
||||
|
||||
IF NOT EXISTS (SELECT name FROM msdb.dbo.sysalerts WHERE name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_alert @name = @AlertName,
|
||||
@message_id = 14150,
|
||||
@severity = 0,
|
||||
@enabled = 1,
|
||||
@delay_between_responses = 3600,
|
||||
@include_event_description_in = 5,
|
||||
@category_name = N'Replication',
|
||||
@job_id = N'00000000-0000-0000-0000-000000000000';
|
||||
|
||||
IF NOT EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts AS sa
|
||||
INNER JOIN msdb.dbo.sysnotifications AS sn
|
||||
ON sa.id = sn.alert_id
|
||||
WHERE sa.name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_notification @alert_name = @AlertName,
|
||||
@operator_name = @OperatorName,
|
||||
@notification_method = 1;
|
||||
|
||||
SET @AlertName = 'Replication: expired subscription dropped';
|
||||
|
||||
IF EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts
|
||||
WHERE ( name = @AlertName
|
||||
AND enabled = 0)
|
||||
OR ( name = @AlertName
|
||||
AND has_notification = 0))
|
||||
EXEC msdb.dbo.sp_delete_alert @name = @AlertName;
|
||||
|
||||
IF NOT EXISTS (SELECT name FROM msdb.dbo.sysalerts WHERE name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_alert @name = @AlertName,
|
||||
@message_id = 14157,
|
||||
@severity = 0,
|
||||
@enabled = 1,
|
||||
@delay_between_responses = 3600,
|
||||
@include_event_description_in = 5,
|
||||
@category_name = N'Replication',
|
||||
@job_id = N'00000000-0000-0000-0000-000000000000';
|
||||
|
||||
IF NOT EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts AS sa
|
||||
INNER JOIN msdb.dbo.sysnotifications AS sn
|
||||
ON sa.id = sn.alert_id
|
||||
WHERE sa.name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_notification @alert_name = @AlertName,
|
||||
@operator_name = @OperatorName,
|
||||
@notification_method = 1;
|
||||
|
||||
SET @AlertName = 'Replication: Subscriber has failed data validation';
|
||||
|
||||
IF EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts
|
||||
WHERE ( name = @AlertName
|
||||
AND enabled = 0)
|
||||
OR ( name = @AlertName
|
||||
AND has_notification = 0))
|
||||
EXEC msdb.dbo.sp_delete_alert @name = @AlertName;
|
||||
|
||||
IF NOT EXISTS (SELECT name FROM msdb.dbo.sysalerts WHERE name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_alert @name = @AlertName,
|
||||
@message_id = 20574,
|
||||
@severity = 0,
|
||||
@enabled = 1,
|
||||
@delay_between_responses = 3600,
|
||||
@include_event_description_in = 5,
|
||||
@category_name = N'Replication',
|
||||
@job_id = N'00000000-0000-0000-0000-000000000000';
|
||||
|
||||
IF NOT EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts AS sa
|
||||
INNER JOIN msdb.dbo.sysnotifications AS sn
|
||||
ON sa.id = sn.alert_id
|
||||
WHERE sa.name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_notification @alert_name = @AlertName,
|
||||
@operator_name = @OperatorName,
|
||||
@notification_method = 1;
|
||||
|
||||
SET @AlertName = 'Replication: Subscriber has passed data validation';
|
||||
|
||||
IF EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts
|
||||
WHERE ( name = @AlertName
|
||||
AND enabled = 0)
|
||||
OR ( name = @AlertName
|
||||
AND has_notification = 0))
|
||||
EXEC msdb.dbo.sp_delete_alert @name = @AlertName;
|
||||
|
||||
IF NOT EXISTS (SELECT name FROM msdb.dbo.sysalerts WHERE name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_alert @name = @AlertName,
|
||||
@message_id = 20575,
|
||||
@severity = 0,
|
||||
@enabled = 1,
|
||||
@delay_between_responses = 3600,
|
||||
@include_event_description_in = 5,
|
||||
@category_name = N'Replication',
|
||||
@job_id = N'00000000-0000-0000-0000-000000000000';
|
||||
|
||||
IF NOT EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts AS sa
|
||||
INNER JOIN msdb.dbo.sysnotifications AS sn
|
||||
ON sa.id = sn.alert_id
|
||||
WHERE sa.name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_notification @alert_name = @AlertName,
|
||||
@operator_name = @OperatorName,
|
||||
@notification_method = 1;
|
||||
|
||||
SET @AlertName = 'Replication: Subscription reinitialized after validation failure';
|
||||
|
||||
IF EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts
|
||||
WHERE ( name = @AlertName
|
||||
AND enabled = 0)
|
||||
OR ( name = @AlertName
|
||||
AND has_notification = 0))
|
||||
EXEC msdb.dbo.sp_delete_alert @name = @AlertName;
|
||||
|
||||
IF NOT EXISTS (SELECT name FROM msdb.dbo.sysalerts WHERE name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_alert @name = @AlertName,
|
||||
@message_id = 20572,
|
||||
@severity = 0,
|
||||
@enabled = 1,
|
||||
@delay_between_responses = 3600,
|
||||
@include_event_description_in = 5,
|
||||
@category_name = N'Replication',
|
||||
@job_id = N'00000000-0000-0000-0000-000000000000';
|
||||
|
||||
IF NOT EXISTS ( SELECT name
|
||||
FROM msdb.dbo.sysalerts AS sa
|
||||
INNER JOIN msdb.dbo.sysnotifications AS sn
|
||||
ON sa.id = sn.alert_id
|
||||
WHERE sa.name = @AlertName)
|
||||
EXEC msdb.dbo.sp_add_notification @alert_name = @AlertName,
|
||||
@operator_name = @OperatorName,
|
||||
@notification_method = 1;
|
||||
END;
|
||||
END;
|
||||
GO
|
||||
Reference in New Issue
Block a user