Criar um alerta de evento WMI
Aplica-se a:SQL Server
Azure SQL Managed Instance
Importante
Na Instância Gerenciada SQL do Azure, a maioria dos recursos do SQL Server Agent, mas não todos, são suportados no momento. Consulte as diferenças de T-SQL entre a Instância Gerida de SQL do Azure e o SQL Server para obter detalhes.
Este artigo descreve como criar um alerta do SQL Server Agent que é gerado quando ocorre um evento específico do SQL Server, monitorado pelo Provedor WMI para Eventos de Servidor no SQL Server, usando o SQL Server Management Studio ou Transact-SQL.
Para obter informações sobre como usar o provedor WMI para monitorar eventos do SQL Server, consulte Provedor WMI para classes e propriedades de eventos de servidor. Para obter informações sobre as permissões necessárias para receber notificações de alerta de eventos WMI, consulte Selecionar uma conta para o serviço SQL Server Agent. Para obter mais informações sobre WQL, consulte Usando WQL com o provedor WMI para eventos de servidor.
Limitações e restrições
O SQL Server Management Studio fornece uma maneira gráfica fácil de gerenciar todo o sistema de alertas e é a maneira recomendada de configurar uma infraestrutura de alerta.
Os eventos gerados com
xp_logevent
ocorrem no banco de dadosmaster
. Portanto,xp_logevent
não aciona um alerta, a menos que o@database_name
do alerta seja'master'
ou NULL.Somente namespaces WMI no computador que executa o SQL Server Agent são suportados.
Permissões
Por padrão, somente membros da função de servidor fixa sysadmin podem executar sp_add_alert
.
Utilize o SQL Server Management Studio
No Explorador de Objetos , selecione o sinal de adição para expandir o servidor onde deseja criar um alerta de evento WMI.
Selecione o sinal de adição para expandir SQL Server Agent.
Clique com o botão direito do rato em Alertas e selecione Novo Alerta.
Na caixa de diálogo Novo Alerta, na caixa de texto Nome, introduza um nome para este alerta.
Marque a caixa de verificação Ativar para permitir que o alerta seja executado. Por padrão, Ativar está selecionada.
Na lista Tipo, selecione alerta de evento do WMI.
Em definição de alerta de evento WMI, na caixa Namespace, especifique o namespace WMI para a instrução WQL (WMI Query Language) que identifica qual evento WMI acionará esse alerta.
Na caixa de Consulta , especifique a instrução WQL que identifica o evento ao qual esse alerta responde.
Selecione OK.
Use Transact-SQL
No Pesquisador de Objetos , conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra Padrão, selecione Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e selecione Executar.
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