Sdílet prostřednictvím


Výstrahy

platí pro:SQL Server

Důležitý

Na Azure SQL Managed Instance, většina, ale ne všechny funkce agenta SQL Serveru jsou aktuálně podporované. Podrobnosti najdete v tématu rozdíly T-SQL služby Azure SQL Managed Instance od SQL Serveru.

Události jsou generovány SQL Serverem a zadány do protokolu aplikací systému Microsoft Windows. Agent SQL Serveru čte protokol aplikace a porovnává události zapsané tam s výstrahami, které jste definovali. Když agent SQL Serveru najde shodu, aktivuje výstrahu, což je automatizovaná odpověď na událost. Kromě monitorování událostí SQL Serveru může agent SQL Serveru monitorovat také podmínky výkonu a události služby WMI (Windows Management Instrumentation).

Pokud chcete definovat výstrahu, zadáte:

  • Název výstrahy.

  • Událost nebo podmínka výkonu, která aktivuje výstrahu.

  • Akce, kterou agent SQL Serveru přijme v reakci na událost nebo podmínku výkonu.

Pojmenování upozornění

Každá výstraha musí mít název. Názvy výstrah musí být jedinečné v rámci instance SQL Serveru a nesmí být delší než 128 znaků.

Výběr typu události

Výstraha reaguje na událost určitého typu. Výstrahy reagují na následující typy událostí:

  • Události SQL Serveru

  • Podmínky výkonu SQL Serveru

  • Události rozhraní WMI

Typ události určuje parametry, které použijete k určení přesné události.

Určení události SQL Serveru

Můžete zadat výstrahu, která se má objevit v reakci na jednu nebo více událostí. K určení událostí, které aktivují výstrahu, použijte následující parametry:

  • číslo chyby

    Agent SQL Serveru aktivuje výstrahu, když dojde k určité chybě. Můžete například zadat číslo chyby 2571, aby reagovalo na neoprávněné pokusy o vyvolání příkazů databázové konzoly (DBCC).

  • úroveň závažnosti

    Agent SQL Serveru aktivuje výstrahu, když dojde k jakékoli chybě konkrétní závažnosti. Můžete například zadat úroveň závažnosti 15, která bude odpovídat na chyby syntaxe v příkazech Transact-SQL.

  • Databáze

    Agent SQL Serveru aktivuje výstrahu pouze v případě, že dojde k události v konkrétní databázi. Tato možnost se vztahuje kromě čísla chyby nebo úrovně závažnosti. Pokud například instance obsahuje jednu databázi, která se používá pro produkční prostředí, a jednu databázi, která se používá k vytváření sestav, můžete definovat výstrahu, která reaguje pouze na chyby syntaxe v produkční databázi.

  • Text akce

    Agent SQL Serveru aktivuje výstrahu, když zadaná událost obsahuje konkrétní textový řetězec ve zprávě události. Můžete například definovat výstrahu, která reaguje na zprávy, které obsahují název konkrétní tabulky nebo konkrétní omezení.

Výběr podmínky výkonu

Můžete zadat výstrahu, která se má objevit v reakci na konkrétní podmínku výkonu. V tomto případě zadáte čítač výkonu, který se má monitorovat, prahovou hodnotu pro výstrahu a chování, které musí čítač zobrazit, pokud má dojít k upozornění. Chcete-li nastavit podmínku výkonu, je nutné definovat následující položky na stránce agenta SQL Serveru Obecné v dialogovém okně Nová výstraha nebo Vlastnosti výstrahy:

  • objektu

    Objekt je oblast výkonu, která se má monitorovat.

  • čítače

    Čítač je atribut oblasti, která se má monitorovat.

  • instance

    Instance SQL Serveru definuje konkrétní instanci (pokud existuje) atributu, který se má monitorovat.

  • upozornění , pokud čítače a hodnota

    Prahová hodnota pro výstrahu a chování, které výstrahu vytvoří. Prahová hodnota je číslo. Toto chování je jedním z následujícího: spadá pod, se rovná, nebo stoupá nad číslo zadané pro hodnotu. Hodnota je číslo, které popisuje čítač výkonových podmínek. Pokud chcete například nastavit výstrahu pro objekt výkonu SQLServer:Locks, když doba čekání na uzamčení překročí 30 minut, zvolíte se zvýší nad a jako hodnotuzadat hodnotu 30 .

    Jako další příklad můžete určit, že se spustí upozornění pro objekt výkonu SQLServer:Transactions, když volné místo v tempdb klesne pod 1000 kB. Pokud to chcete nastavit, zvolte volné místo v databázi tempdb (KB), spadá poda hodnota1000.

    Poznámka

    Data o výkonu se pravidelně vzorkují, což může vést k malému zpoždění (několik sekund) mezi dosažením prahové hodnoty a výskytem upozornění na výkon.

    Poznámka

    Proměnná protokolu událostí, která ukládá název serveru, je omezená na 32 znaků. Proto pokud je kombinovaná velikost názvu hostitele a názvu instance větší než 32 znaků, může se zobrazit následující chyba:

Warning,[466] Failed to copy server name LONGNAMESQLSERV\LONGINSTANCENAME while generating performance counter alerts.

Výběr události rozhraní WMI

Můžete určit, že se výstraha vyskytuje v reakci na konkrétní událost rozhraní WMI. Chcete-li vybrat událost rozhraní WMI, je nutné definovat následující položky na stránce agenta SQL Serveru Obecné v dialogovém okně Nová výstraha nebo Vlastnosti výstrahy:

  • oboru názvů

    SQL Server Agent se registruje jako klient služby WMI do oboru názvů WMI, který je určen pro dotazování na události.

  • dotazu

    Agent SQL Serveru používá k identifikaci konkrétní události příkaz WQL (Windows Management Instrumentation Query Language).

Tady jsou odkazy na běžné úlohy:

Vytvoření výstrahy na základě čísla zprávy

Vytvoření výstrahy na základě úrovní závažnosti

Vytvořit výstrahu na základě události rozhraní WMI

Definování odpovědi na výstrahy

Vytvořit chybovou zprávu události definované uživatelem

Změna chybové zprávy události definované uživatelem

Odstranění chybové zprávy události definované uživatelem

Zakázání nebo opětovná aktivace výstrahy

Viz také

sp_update_alert (Transact-SQL)