Dela via


Hantera händelser

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

Viktigt!

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 i Azure SQL Managed Instance från SQL Server - eller SQL Agent-jobbbegränsningar i SQL Managed Instance .

Du kan vidarebefordra till en instans av SQL Server alla händelsemeddelanden som uppfyller eller överskrider en specifik allvarlighetsgrad för fel. Detta kallas vidarebefordring av händelser. Vidarebefordringsservern är en dedikerad server som också kan vara en huvudserver. Du kan använda vidarebefordran av händelser för att centralisera aviseringshantering för en grupp servrar, vilket minskar arbetsbelastningen på servrar med hög användning.

När en server tar emot händelser för en grupp andra servrar kallas servern som tar emot händelser för en hanteringsserver för aviseringar. I en miljö med flera servrar anger du huvudservern som hanteringsserver för aviseringar.

Fördelar med att använda en aviseringshanteringsserver

Fördelarna med att konfigurera en hanteringsserver för aviseringar är:

  • Centralisering. Centraliserad kontroll och en samlad vy över händelserna i flera instanser av SQL Server är möjliga från en enskild server.

  • Skalbarhet. Många fysiska servrar kan administreras som en logisk server. Du kan lägga till eller ta bort servrar i den här fysiska servergruppen efter behov.

  • Effektivitet. Konfigurationstiden minskar eftersom du bara behöver definiera aviseringar och operatorer en gång.

Nackdelar med att använda en hanteringsserver för aviseringar

Nackdelarna med att konfigurera en hanteringsserver för aviseringar är:

  • Ökad trafik. Om du vidarebefordrar händelser till en hanteringsserver för aviseringar kan nätverkstrafiken öka. Den här ökningen kan modereras genom att begränsa vidarebefordran av händelser som överskrider en angiven allvarlighetsgrad.

  • Enskild felpunkt. Om hanteringsservern för aviseringar går offline utfärdas inga aviseringar för någon händelse på den hanterade servergruppen.

  • Serverbelastning. Hantering av aviseringar för vidarebefordrade händelser orsakar en ökad bearbetningsbelastning på hanteringsservern för aviseringar.

Riktlinjer för att använda en aviseringshanteringsserver

När du konfigurerar en hanteringsserver för aviseringar följer du dessa riktlinjer:

  • För att kunna ta emot vidarebefordrade händelser måste hanteringsservern för aviseringar vara en standardinstans av SQL Server.

  • Undvik att köra kritiska eller kraftigt använda program på hanteringsservern för aviseringar.

  • Planera noggrant för nätverkstrafiken som ingår i konfigurationen av många servrar för att dela samma hanteringsserver för aviseringar. Om överbelastning uppstår, minska antalet servrar som använder en viss hanteringsserver för aviseringar.

    Servrarna som är registrerade i SQL Server Management Studio utgör listan över servrar som ska väljas av servern som server för vidarebefordran av aviseringar.

  • Definiera aviseringar på den lokala instansen av SQL Server som kräver ett serverspecifikt svar i stället för att vidarebefordra aviseringarna till hanteringsservern för aviseringar.

    Aviseringshanteringsservern visar alla servrar som vidarebefordrar till den som en logisk helhet. En hanteringsserver för aviseringar svarar till exempel på samma sätt på en 605-händelse från server A och en 605-händelse från server B.

  • När du har konfigurerat aviseringssystemet kontrollerar du regelbundet Microsoft Windows-programloggen för SQL Server Agent-händelser.

    Feltillstånd som påträffas av aviseringsmotorn skrivs till den lokala Windows-programloggen med källnamnet "SQL Server Agent". Om SQL Server Agent till exempel inte kan skicka ett e-postmeddelande som det har definierats loggas en händelse i programloggen.

Om en lokalt definierad avisering inaktiveras och en händelse inträffar som skulle ha orsakat att aviseringen utlöstes, vidarebefordras händelsen till hanteringsservern för aviseringar (om den uppfyller villkoret för vidarebefordran av aviseringar). Med den här vidarebefordran kan lokala åsidosättningar (aviseringar som definierats lokalt och som också definieras på hanteringsservern för aviseringar) inaktiveras och aktiveras efter behov av användaren på den lokala platsen. Du kan också begära att händelser alltid vidarebefordras, även om de också hanteras av lokala aviseringar.

Följande är vanliga uppgifter för att hantera händelser i en multiservermiljö:

Så här anger du en hanteringsserver för aviseringar

Så här definierar du svaret på en avisering

Utför Event-Triggered arbetsuppgifter

Du kan definiera ett jobb som ska köras som svar på en avisering. Du kan till exempel köra ett jobb som korrigerar eller ytterligare diagnostiserar ett problem som identifierats av aviseringen.

Anmärkning

Eftersom ett jobb kan generera en händelse bör du vara försiktig så att du inte skapar en rekursiv loop för aviseringsjobb.

Se även

sp_add_notification (Transact-SQL)