Create an Alert Using Severity Level
Gilt für: SQL Server Azure SQL Managed Instance
Wichtig
In Azure SQL Managed Instance werden derzeit die meisten, aber nicht alle, SQL Server-Agent-Features unterstützt. Details dazu finden Sie unter T-SQL-Unterschiede zwischen Azure SQL Managed Instance und SQL Server.
In diesem Thema wird beschrieben, wie Sie mit SQL Server Management Studio oder Transact-SQL eine Warnung des Microsoft SQL Server-Agents erstellen, die ausgelöst wird, wenn ein Ereignis mit einem bestimmten Schweregrad in SQL Server auftritt.
Vorbereitungen
Einschränkungen
Mit SQL Server Management Studio lässt sich das gesamte Warnungssystem auf einfache Weise mit einer grafischen Oberfläche verwalten. Dies ist die empfohlene Vorgehensweise, um eine Warnungsinfrastruktur zu konfigurieren.
Ereignisse, die mit xp_logevent generiert werden, treten in der master-Datenbank auf. Daher wird von xp_logevent erst dann eine Warnung ausgegeben, wenn der @database_name -Wert für die Warnung den Wert 'master' oder NULL hat.
Bei den Schweregraden 19 bis 25 wird eine SQL Server-Meldung an das Windows-Anwendungsprotokoll gesendet und eine Warnung ausgelöst. Ereignisse mit einem Schweregrad unter 19 lösen nur dann Warnungen aus, wenn Sie sp_altermessage, RAISERROR WITH LOG oder xp_logevent verwendet haben, um zu erzwingen, dass die Warnungen in das Windows-Anwendungsprotokoll geschrieben werden.
Sicherheit
Berechtigungen
Standardmäßig können nur Mitglieder der festen Serverrolle sysadmin die Prozedur sp_add_alertausführen.
Verwendung von SQL Server Management Studio
So erstellen Sie eine Warnung mithilfe von Schweregraden
Klicken Sie im Objekt-Explorer auf das Pluszeichen, um den Server zu erweitern, auf dem Sie eine Warnung mithilfe des Schweregrads 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 einen Namen für diese Warnung ein.
Klicken Sie in der Liste Typ auf SQL Server-Ereigniswarnung.
Klicken Sie in der Liste Datenbanknameauf den Datenbanknamen, um die Warnung auf eine bestimmte Datenbank zu beschränken.
Klicken Sie unter Warnungen werden ausgelöst basierend aufauf Schweregrad , und wählen Sie dann den bestimmten Schweregrad aus, womit die Warnung ausgelöst wird.
Aktivieren Sie das Kontrollkästchen neben Warnung auslösen, wenn eine Meldung Folgendes enthält , um die Warnung auf eine bestimmte Zeichenfolge zu beschränken, und geben Sie dann ein Schlüsselwort oder Zeichenfolge für den Meldungstextein. Es können maximal 100 Zeichen eingegeben werden.
Klicken Sie auf OK.
Verwenden von Transact-SQL
So erstellen Sie eine Warnung mithilfe von Schweregraden
Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-Engine-Instanz her.
Klicken Sie in der Standardleiste auf Neue Abfrage.
Kopieren Sie das folgende Beispiel, 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).