Here I simply put that inside by own procedure to generate an email too.
CREATE PROCEDURE utils.[LinkedServerTest] @ServerName SYSNAME AS BEGIN DECLARE @Test BIT BEGIN TRY EXEC @Test= sys.sp_testlinkedserver @servername PRINT 'Sucessfully connected to ' + CAST(@servername as VARCHAR(30)) END TRY BEGIN CATCH PRINT 'Failed to connect to ' + CAST(@servername as VARCHAR(30)) DECLARE @chvFrom VARCHAR(255) DECLARE @chvTo VARCHAR(255) DECLARE @chvSubject VARCHAR(255) DECLARE @chvBody VARCHAR(8000) SET @chvFrom = 'sql.admin@domain.co.uk' SET @chvTo = 'sql.admin@domain.co.uk' SET @chvSubject = 'Linked Server Connnection Failure : ' + @servername + ' cannot be accessed from ' + @@SERVERNAME SET @chvBody = @chvSubject EXEC msdb.dbo.sp_send_dbmail @profile_name='Mail Profile' , @recipients=@chvTo , @body=@chvBody , @subject=@chvSubject , @importance='High' RAISERROR ('Linked Server Failure', 16, 1, @chvSubject) WITH LOG END CATCH END GO
Usage :
exec utils.LinkedServerTest @ServerName = 'my linked server'
No comments:
Post a Comment