Antes de começar:
Limitações e restrições
SQL Server Management Studio fornece um modo gráfico e fácil para gerenciar o sistema de alertas inteiro e é recomendado para configurar uma infraestrutura de alerta.
Eventos gerados com xp_logevent ocorrem no banco de dados mestre. Portanto, xp_logevent não dispara um alerta a menos que o @database_name para o alerta seja 'mestre' ou NULL.
Só têm suporte os namespaces WMI em computadores que executam o SQL ServerAgent.
Segurança
Permissões
Por padrão, somente membros da função de servidor fixa sysadmin podem executar sp_add_alert.
Usando o SQL Server Management Studio
Para criar um alerta de eventos WMI
No Pesquisador de Objetos , clique no sinal de adição para expandir o servidor em que você deseja criar um alerta de eventos WMI.
Clique no sinal de adição para expandir o SQL Server Agent.
Clique com o botão direito do mouse em Alertas e selecione Novo Alerta.
Na caixa de diálogo Novo Alerta , na caixa Nome , digite um nome para esse alerta.
Marque a caixa de seleção Habilitar para permitir a execução do alerta. Por padrão, Habilitar encontra-se selecionado.
Na lista Tipo , selecione Alerta de eventos WMI.
Em Definição de alerta do evento WMI, na caixa Namespace , especifique o namespace WMI da instrução WQL que identifica o evento WMI que vai disparar o alerta.
Na caixa Consulta , especifique a instrução WQL que identifica o evento ao qual o alerta responde.
Clique em OK.
Usando Transact-SQL
Para criar um alerta de eventos WMI
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra Padrão, clique em Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e clique em Executar.
-- creates a WMI event alert that retrieves all event properties for any ALTER_TABLE event that occurs on table AdventureWorks2012.Sales.SalesOrderDetail -- This example assumes that the message 54001 already exists. 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 AdventureWorks2012 database.', @wmi_namespace = '\\.\root\Microsoft\SqlServer\ServerEvents\, @wmi_query = N'SELECT * FROM ALTER_TABLE WHERE DatabaseName = 'AdventureWorks2012' AND SchemaName = 'Sales' AND ObjectType='Table' AND ObjectName = 'SalesOrderDetail''; GO
Nenhum comentário:
Postar um comentário