Een WMI-gebeurteniswaarschuwing maken
van toepassing op:SQL Server
Azure SQL Managed Instance
Belangrijk
Op Azure SQL Managed Instanceworden de meeste, maar niet alle FUNCTIES van SQL Server Agent momenteel ondersteund. Zie T-SQL-verschillen tussen Azure SQL Managed Instance en SQL Server voor meer informatie.
In dit artikel wordt beschreven hoe een SQL Server Agent-waarschuwing wordt gegenereerd wanneer een specifieke SQL Server-gebeurtenis plaatsvindt die wordt bewaakt door de WMI-provider voor servergebeurtenissen in SQL Server met behulp van SQL Server Management Studio of Transact-SQL.
Zie voor informatie over het gebruik van de WMI-provider voor het bewaken van SQL Server-gebeurtenissen, WMI-provider voor Servergebeurtenissen Klassen en Eigenschappen. Zie Selecteer een account voor de SQL Server Agent-servicevoor informatie over de machtigingen die nodig zijn voor het ontvangen van WMI-waarschuwingsmeldingen. Voor meer informatie over WQL, zie WQL gebruiken met de WMI-provider voor servergebeurtenissen.
Beperkingen en beperkingen
SQL Server Management Studio biedt een eenvoudige, grafische manier om het hele waarschuwingssysteem te beheren en is de aanbevolen manier om een waarschuwingsinfrastructuur te configureren.
Gebeurtenissen die met
xp_logevent
worden gegenereerd, vinden plaats in demaster
-database. Daarom activeertxp_logevent
geen waarschuwing, tenzij de@database_name
voor de waarschuwing'master'
of NULL is.Alleen WMI-naamruimten op de computer waarop SQL Server Agent wordt uitgevoerd, worden ondersteund.
Machtigingen
Standaard kunnen alleen leden van de sysadmin vaste serverfunctie sp_add_alert
uitvoeren.
SQL Server Management Studio gebruiken
Selecteer in Objectverkenner het plusteken om de server uit te vouwen waarop u een WMI-gebeurteniswaarschuwing wilt maken.
Selecteer het plusteken om SQL Server Agent-uit te vouwen.
Klik met de rechtermuisknop op Waarschuwingen en selecteer Nieuwe waarschuwing.
Voer in het dialoogvenster Nieuwe waarschuwing in het vak Naam een naam in voor deze waarschuwing.
Vink het selectievakje Inschakelen aan om de waarschuwing te activeren. Standaard staat Inschakelen aangevinkt.
Selecteer in de lijst TypeWMI-gebeurteniswaarschuwing.
Geef onder WMI-gebeurteniswaarschuwingsdefinitiein het vak Naamruimte de WMI-naamruimte op voor de WMI Query Language-instructie (WQL) die aangeeft welke WMI-gebeurtenis deze waarschuwing activeert.
Geef in het vak Query de WQL-instructie op waarmee de gebeurtenis wordt geïdentificeerd waarop deze waarschuwing reageert.
Selecteer OK-.
Gebruik Transact-SQL
Maak in Objectverkennerverbinding met een instantie van de Database Engine.
Selecteer op de standaardbalk Nieuwe query.
Kopieer en plak het volgende voorbeeld in het queryvenster en selecteer uitvoeren.
USE msdb; GO EXEC dbo.sp_add_alert @name = N'Test Alert 2', @message_id = 54001, @notification_message = N'Error 54001 has occurred on the Sales.SalesOrderDetail table on the AdventureWorks2022 database.', @wmi_namespace = '\.\root\Microsoft\SqlServer\ServerEvents', @wmi_query = N'SELECT * FROM ALTER_TABLE WHERE DatabaseName = ''AdventureWorks2022'' AND SchemaName = ''Sales'' AND ObjectType=''Table'' AND ObjectName = ''SalesOrderDetail'''; GO