|
sql
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Proactive Monitoring in SQL SERVERGood Morning,
Please someone have a document with the necessary actions for the proactive monitoring. I need this document for the implementation of alarms in SQL SERVER, for example send an alarm when the tranasaction Log reaches determined percentage. Thank You Fulfilly. e-mail: jose_julio_mota_dua***@hotmail.com José Júlio Duarte Jose
> example send an alarm when the tranasaction Log reaches determined http://www.sql-server-performance.com/notification_services.asp> percentage. > Thank You This one I've juts found on internet /* This procedure will send a notification if the free disk space on any of the drives SQL Server resides on is lower than the specified limit. The alert can either be an email or netsend. usage: exec master.dbo.sp_diskalert 'ha***@foo.com', 1000 Will send an email to ha***@foo.com if the free disk space is less than 1000mb NB more than one email address can be specified, separate using semi colons USAGE: EXEC master.dbo.sp_diskalert 'HARRY PARKINSON', 250 Will send the alert via net send to user harry parkinson if the free disk space is less than 250mb NB this could also be a computer name, normal net send rules apply Supports sql server 7 or 2000 You need sql mail configured to send email! If xp_cmdshell doesn't exist it will be added and dropped as needed */ USE master GO if exists (select * from sysobjects where id = object_id(N'[dbo].[sp_diskalert]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure [dbo].[sp_diskalert] GO create procedure sp_diskalert @RCPT VARCHAR(500), @LIMIT INT AS BEGIN SET NOCOUNT ON CREATE TABLE #T1( DRVLETTER CHAR(1), DRVSPACE INT ) INSERT INTO #T1 EXEC master.dbo.xp_fixeddrives /* GENERATE THE MESSAGE */ IF (SELECT COUNT(*) FROM #T1) > 0 AND LEN(@RCPT) > 0 --CHECK THERE IS SOME DATA AND A RECIPIENT BEGIN DECLARE @MSG VARCHAR(400), @DLETTER VARCHAR(5), @DSPACE INT SET @DLETTER = (SELECT TOP 1 DRVLETTER FROM #T1 --GET FIRST DRIVE LETTER WHERE DRVSPACE < @LIMIT ORDER BY DRVLETTER ASC) SET @DSPACE = (SELECT DRVSPACE FROM #T1 --GET THE DISK SPACE FOR THE LETTER WHERE DRVLETTER = @DLETTER) SET @MSG = @DLETTER + ' is at ' + CONVERT(VARCHAR,@DSPACE) --PUT THE VARS INTO A MSG + 'MB' + CHAR(13) + CHAR(10) WHILE (SELECT COUNT(*) FROM #T1 WHERE DRVSPACE < @LIMIT AND DRVLETTER > @DLETTER) > 0 BEGIN --LOOP THROUGH DRIVE LETTERS AND REPEAT ABOVE SET @DLETTER = (SELECT TOP 1 DRVLETTER FROM #T1 WHERE DRVSPACE < @LIMIT AND DRVLETTER > @DLETTER ORDER BY DRVLETTER ASC) SET @DSPACE = (SELECT DRVSPACE FROM #T1 WHERE DRVLETTER = @DLETTER) SET @MSG = @MSG + @DLETTER + ' is at ' + CONVERT(VARCHAR,@DSPACE) + 'MB' + CHAR(13) + CHAR(10) END /* SEND THE MESSAGE */ IF CHARINDEX('@',@RCPT) > 0 --THERE IS AN @ SYMBOL IN THE RECIPIENT - SEND BEGIN DECLARE @EMAIL VARCHAR(600) SET @EMAIL = 'EXEC master.dbo.xp_sendmail @recipients = ''' + @RCPT + ''', @message = ''' + @MSG + ''', @subject = ''!! LOW FREE DISK SPACE ON ' + @@SERVERNAME + ' !!''' EXEC (@EMAIL) END ELSE IF CHARINDEX('@',@RCPT) = 0 --THERE IS NO @ SYMBOL IN THE RECIPIENT - NET SEND BEGIN --DETERMINE IF XP_CMDSHELL EXISTS DECLARE @FLAG BIT SET @FLAG = 1 IF NOT EXISTS(SELECT NAME FROM master..sysobjects WHERE NAME = 'XP_CMDSHELL') SET @FLAG = 0 --IF NOT RECREATE IT IF @FLAG = 0 BEGIN EXEC sp_addextendedproc 'xp_cmdshell', 'xpsql70.dll' PRINT 'ADDING XP_CMDSHELL' END --NET SEND MSG DECLARE @NETSEND VARCHAR(600) SET @MSG = 'ALERT - LOW FREE DISK SPACE ON ' + @@SERVERNAME + ' : ' + @MSG SET @NETSEND = 'xp_cmdshell ''net send "' + RTRIM(@RCPT) + '" ' + LEFT(RTRIM(REPLACE(@MSG,CHAR(13) + CHAR(10),', ')),LEN(@MSG)-2) + '''' EXEC (@NETSEND) IF @FLAG = 0 BEGIN EXEC sp_dropextendedproc 'xp_cmdshell' PRINT 'DROPPING XP_CMDSHELL' END END END DROP TABLE #T1 END GO Show quoteHide quote "Jos? J?lio Duarte" <JosJlioDua***@discussions.microsoft.com> wrote in message news:D16DFC80-B956-4375-A572-A8190CE5F886@microsoft.com... > Good Morning, > > Please someone have a document with the necessary actions for the > proactive > monitoring. > I need this document for the implementation of alarms in SQL SERVER, for > example send an alarm when the tranasaction Log reaches determined > percentage. > Thank You > > Fulfilly. > > e-mail: jose_julio_mota_dua***@hotmail.com > > Jos? J?lio Duarte
How to manipulate column data to place in a temporary table
How to prevent users to see databases apart their own Neverfail vs Mirroring heap tables Question about Back ups Apply a long list of SQL Statements SET ARITHABORT ON: Why (not)? OPENQUERY problem with dynamic result set Creating a Trigger on Table Access Cumulative hotfix package (build 2153) |
|||||||||||||||||||||||