Czy w SQL Server 2008 można ustawić alert, który wyśle wiadomość e-mail za każdym razem, gdy zadanie w określonej kategorii nie powiedzie się?
Zastanawiam się, ponieważ chciałbym skonfigurować e-mail za każdym razem, gdy subskrypcja SSRS się nie powiedzie - i wszystkie te subskrypcje są zadaniami z kategorii Serwer raportów .
EDYCJA - okazuje się, że gdy subskrypcja SSRS zawiedzie, samo zadanie nie zawiedzie, więc moje pytanie nie będzie dotyczyło monitorowania subskrypcji SSRS. Jednak nadal chciałbym wiedzieć o innych zadaniach, które wykonujemy w naszym środowisku
AND EXISTS
częśćINSERT/SELECT
. I prawdopodobnie zmień nazwęReportServerJob_FailQueue
na coś bardziej ogólnego. :-)Odpowiedzi:
Możesz utworzyć zadanie sprawdzające tabelę msdb.dbo.sysjobhistory co minutę (lub jak często chcesz). Możesz zaimplementować tabelę kolejek, abyś mógł wysłać wiadomość tylko raz w przypadku awarii pojedynczej instancji.
Zatem twój kod, który możesz zaplanować w zadaniu, staje się:
Teraz zakładam, że chcesz wysłać indywidualny e-mail dla każdej awarii, więc może to być również część zadania (lub część innego zadania, choć niekoniecznie jest to mądre):
Istnieją również inne opcje:
Jeśli poczta bazy danych nie jest jeszcze skonfigurowana, zapoznaj się z tym samouczkiem .
Możesz także użyć narzędzi innych firm (np. SQL Sentry Event Manager ), które znacznie uprości to. Pełne ujawnienie: Pracuję dla SQL Sentry.
źródło
W oparciu o Twoją edycję byłoby to tylko rozszerzenie odpowiedzi Aarona na same niepowodzenia subskrypcji SSRS (nie tylko zadanie SQL Agent). Proponuję po prostu dodać krok do zadania monitorowania pracy, albo możesz to zrobić jako osobne zadanie.
Aby uzyskać status subskrypcji, wystarczy sprawdzić
ReportServer.dbo.ExecutionLog3
widok .Status
Kolumna pokaże wszystko, alersSuccess
na awarie. Po prostu odfiltrujRequestType = 'Subscription'
. Będziesz chciał uwzględnić kontrolę czasu, aby nie sprawdzać wszystkich rekordów za każdym razem. Jeśli uruchamiasz zadanie co 15 minut, po prostu sprawdźTimeStart
ostatnie 15 minut.źródło