Erstellen einer Warnung unter Verwendung eines Schweregrads
Gilt für:SQL Server
azure SQL Managed Instance
Wichtig
In azure SQL Managed Instancewerden die meisten, aber nicht alle SQL Server-Agent-Features derzeit unterstützt. Weitere Informationen finden Sie unter T-SQL-Unterschiede zwischen azure SQL Managed Instance T-SQL und SQL Server.
In diesem Thema wird beschrieben, wie Sie eine Microsoft SQL Server-Agent-Warnung erstellen, die ausgelöst wird, wenn ein Ereignis eines bestimmten Schweregrads in SQL Server mithilfe von SQL Server Management Studio oder Transact-SQL auftritt.
Bevor Sie beginnen
Beschränkungen und Einschränkungen
SQL Server Management Studio bietet eine einfache, grafische Möglichkeit zum Verwalten des gesamten Warnungssystems und ist die empfohlene Methode zum Konfigurieren einer Warnungsinfrastruktur.
Ereignisse, die mit xp_logevent generiert werden, treten in der Masterdatenbank auf. Daher löst xp_logevent keine Warnung aus, es sei denn, die @database_name für die Warnung ist "Master"- oder NULL.
Schweregrade von 19 bis 25 senden eine SQL Server-Nachricht an das Microsoft Windows-Anwendungsprotokoll und lösen eine Warnung aus. Ereignisse mit Schweregraden unter 19 lösen Warnungen nur aus, wenn Sie sp_altermessage, RAISERROR WITH LOG oder xp_logevent verwendet haben, um zu erzwingen, dass sie in das Windows-Anwendungsprotokoll geschrieben werden.
Sicherheit
Erlaubnisse
Standardmäßig können nur Mitglieder der festen Serverrolle sysadmin den Befehl sp_add_alertausführen.
Verwenden von SQL Server Management Studio
So erstellen Sie eine Warnung mit schweregrad
Klicken Sie im Objekt-Explorer auf das Pluszeichen, um den Server zu erweitern, auf dem Sie eine Warnung mit schweregrad erstellen möchten.
Klicken Sie auf das Pluszeichen, um SQL Server-Agentzu erweitern.
Klicken Sie mit der rechten Maustaste auf Warnungen und wählen Sie Neue Warnungaus.
Geben Sie im Dialogfeld Neue Warnung im Feld Name einen Namen für diese Warnung ein.
Wählen Sie in der Liste Typ-SQL Server-Ereigniswarnungaus.
Wählen Sie unter Ereigniswarnungsdefinitionin der liste Datenbanknamen eine Datenbank aus, um die Warnung auf eine bestimmte Datenbank einzuschränken.
Unter werden basierend aufWarnungen ausgelöst, klicken Sie auf Schweregrad, und wählen Sie dann den spezifischen Schweregrad aus, der die Warnung auslöst.
Markieren Sie das Kontrollkästchen "Warnung auslösen, wenn die Nachricht das Kontrollkästchen enthält", um die Warnung auf eine bestimmte Zeichensequenz zu beschränken, und geben Sie dann ein Schlüsselwort oder eine Zeichenfolge für den Nachrichtentextein. Die maximale Anzahl von Zeichen beträgt 100.
Klicken Sie auf OK.
Verwenden von Transact-SQL
So erstellen Sie eine Warnung mit schweregrad
Stellen Sie im Objekt-Explorereine Verbindung zu einer Instanz des Datenbankmoduls her.
Klicken Sie auf der Standard-Symbolleiste auf Neue Abfrage.
Kopieren Sie das folgende Beispiel, und fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen.
-- Adds an alert (Test Alert) that notifies the -- Alert Operator via email when an error with a -- severity of 23 is detected. -- Assumes that the Alert Operator already exists -- and that database mail is configured. USE msdb ; GO EXEC dbo.sp_add_alert @name=N'Test Alert', @message_id = 0, @severity = 23, @enabled = 1, @include_event_description_in = 1 ; GO EXEC dbo.sp_add_notification @alert_name=N'Test Alert', @operator_name=N'Alert Operator', @notification_method=1 ; GO
Weitere Informationen finden Sie unter sp_add_alert (Transact-SQL).