Delen via


Een WMI-gebeurteniswaarschuwing maken

van toepassing op:SQL ServerAzure 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 de master-database. Daarom activeert xp_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_alertuitvoeren.

SQL Server Management Studio gebruiken

  1. Selecteer in Objectverkenner het plusteken om de server uit te vouwen waarop u een WMI-gebeurteniswaarschuwing wilt maken.

  2. Selecteer het plusteken om SQL Server Agent-uit te vouwen.

  3. Klik met de rechtermuisknop op Waarschuwingen en selecteer Nieuwe waarschuwing.

  4. Voer in het dialoogvenster Nieuwe waarschuwing in het vak Naam een naam in voor deze waarschuwing.

  5. Vink het selectievakje Inschakelen aan om de waarschuwing te activeren. Standaard staat Inschakelen aangevinkt.

  6. Selecteer in de lijst TypeWMI-gebeurteniswaarschuwing.

  7. 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.

  8. Geef in het vak Query de WQL-instructie op waarmee de gebeurtenis wordt geïdentificeerd waarop deze waarschuwing reageert.

  9. Selecteer OK-.

Gebruik Transact-SQL

  1. Maak in Objectverkennerverbinding met een instantie van de Database Engine.

  2. Selecteer op de standaardbalk Nieuwe query.

  3. 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
    

Volgende stappen