Dela via


Övervaka och svara på händelser

gäller för:SQL ServerAzure SQL Managed Instance

Viktig

Azure SQL Managed Instancestöds de flesta, men inte alla SQL Server Agent-funktioner för närvarande. Mer information finns i T-SQL-skillnader mellan SQL Server och Azure SQL Managed Instance.

SQL Server-agenten kan övervaka och automatiskt svara på händelser, till exempel meddelanden från SQL Server, specifika prestandavillkor och WMI-händelser (Windows Management Instrumentation).

I det här avsnittet

aviseringar
Innehåller information om hur du namnger en avisering och väljer de händelser eller prestandavillkor som aviseringarna svarar på.

Skapa en User-Defined händelse
Innehåller information om hur du skapar andra händelser än de som är fördefinierade av SQL Server.

Operatorer
Innehåller information om hur du skapar alias för administratörer som SQL Server Agent kan använda för att skicka meddelanden när jobb misslyckas eller lyckas.

Om övervakning och svar på händelser

Automatiserade svar på händelser kallas aviseringar. Du kan definiera en avisering för en eller flera händelser för att ange hur du vill att SQL Server-agenten ska svara på deras förekomst. En avisering kan svara på en händelse genom att meddela en administratör eller köra ett jobb, eller både och. En avisering kan också vidarebefordra en händelse till Microsoft Windows-programloggen på en annan dator. Du kan till exempel ange att en operatör ska meddelas omedelbart om en händelse av allvarlighetsgrad 19 inträffar. Genom att definiera aviseringar kan databasadministratörer mer effektivt övervaka och hantera SQL Server.

SQL Server-agenten svarar bara på händelser som en avisering har definierats för. Den metod som SQL Server Agent använder för att övervaka händelser beror på typen av händelse.

När en SQL Server Agent-avisering har definierats för en prestandaräknare övervakar SQL Server Agent prestandaräknaren direkt. För en WMI-händelse registrerar SQL Server Agent en händelsefråga för WMI-händelsen.

Sql Server-agenten övervakar Windows-programloggen för att svara på meddelanden från SQL Server. SQL Server-agenten kan bara svara på meddelanden som visas i den här loggen. Som standard loggar SQL Server följande meddelanden i Windows-programloggen:

  • Allvarlighetsgrad 19 eller högre fel i sysmessages.

    Om du också vill logga specifika sysmessages-fel som har en allvarlighetsgrad som är lägre än 19 använder du den sp_altermessage lagrade proceduren för att ange sådana fel som "alltid loggade".

  • Alla RAISERROR-instruktioner som anropas med hjälp av WITH LOG-syntaxen.

    Att använda RAISERROR WITH LOG är det rekommenderade sättet att skriva till Windows-programloggen från en instans av SQL Server.

  • Alla programhändelser som loggas med hjälp av xp_logevent.

    Not

    Loggning av programhändelser förbrukar loggutrymme och kan leda till att Windows-programloggen överskrider sin maximala storlek. Kontrollera att den maximala storleken på Windows-programloggen är tillräckligt stor för att undvika förlust av SQL Server-händelseinformation.

När SQL Server loggar ett meddelande jämför SQL Server Agent-tjänsten meddelandet med de aviseringar som definierats av SQL Server-administratören.

Oavsett källan till händelsen svarar SQL Server Agent-tjänsten på händelsen genom att utföra de uppgifter som anges i aviseringen för händelsen.

Se även

sp_altermessage