Partilhar via


Alertas

Aplica-se a: SQL Server

Importante

Atualmente, na Instância Gerenciada de SQL do Azure, a maioria dos recursos do SQL Server Agent é compatível, mas não todos. Confira detalhes nas Diferenças entre o T-SQL da Instância Gerenciada de SQL do Azure e o SQL Server.

Eventos são gerados pelo SQL Server e inseridos no log de aplicativos do Microsoft Windows. SQL Server O Agent lê o log de aplicativos e compara os eventos gravados ali com os alertas que você definiu. Quando o SQL Server Agent encontra uma correspondência, ele dispara um alerta, que é uma resposta automatizada a um evento. Além de monitorar eventos do SQL Server , o SQL Server Agent também pode monitorar condições de desempenho e eventos do Windows Management Instrumentation (WMI).

Para definir um alerta, especifique:

  • O nome do alerta.

  • O evento ou condição de desempenho que aciona o alerta.

  • A ação a ser tomada pelo SQL Server Agent em resposta ao evento ou condição de desempenho.

Nomeando um alerta

Todo alerta deve ter um nome. Os nomes de alerta devem ser exclusivos dentro da instância do SQL Server e não podem ultrapassar 128 caracteres.

Selecionando um tipo de evento

Um alerta responde a um evento de tipo específico. Alertas respondem aos seguintes tipos de evento:

  • SQL Server eventos

  • SQL Server condições de desempenho

  • Eventos do WMI

O tipo do evento determina os parâmetros utilizados para especificar o evento preciso.

Especificando um evento do SQL Server

É possível especificar que um alerta ocorra em resposta a um ou mais eventos. Use os seguintes parâmetros para especificar os eventos que acionam um alerta:

  • Número do erro

    SQL Server O Agent dispara um alerta quando ocorre um erro específico. Por exemplo, você pode especificar o número de erro 2571 como resposta a tentativas não autorizadas de invocar DBCC (Database Console Commands).

  • Nível de severidade

    SQL Server O Agent dispara um alerta quando ocorre qualquer erro de uma severidade específica. Por exemplo, você pode especificar um nível de severidade 15 como resposta a erros de sintaxe em instruções Transact-SQL.

  • Backup de banco de dados

    SQL Server O Agent só dispara um alerta quando o evento ocorre em um banco de dados específico. Esta opção pode ser aplicada em conjunto com o número de erro ou o nível de severidade. Por exemplo, se uma instância contiver um banco de dados utilizado para produção e outro utilizado para relatórios, você poderá definir um alerta como resposta a erros de sintaxe apenas do banco de dados de produção.

  • Texto do evento

    SQL Server O Agent dispara um alerta quando o evento especificado contém uma determinada cadeia de caracteres de texto em sua mensagem. Por exemplo, você pode definir um alerta como resposta a mensagens contendo o nome de uma tabela ou restrição em particular.

Selecionando uma condição de desempenho

É possível especificar que um alerta ocorra em resposta a uma condição de desempenho em particular. Neste caso, especifique o contador de desempenho a monitorar, o limite do alerta e o comportamento que o contador deve ter face ao alerta. Para definir uma condição de desempenho, é necessário definir os seguintes itens na página SQL Server Geral da caixa de diálogo Novo Alerta ou Propriedades do Alerta do Agent:

  • Objeto

    O objeto é a área de desempenho a ser monitorada.

  • Contador

    Um contador é um atributo da área a ser monitorada.

  • Instância

    A instância do SQL Server define a instância específica (se houver) do atributo a ser monitorado.

  • Alertar se o contador e Valor

    O limite do alerta e o comportamento que o alerta produz. O limite é um número. O comportamento é um dos seguintes: cai abaixo, torna-se igual aou sobe acima de um número especificado como Valor. O Valor é um número que descreve o contador de condição de desempenho. Por exemplo, para definir que ocorra um alerta para o objeto de desempenho SQLServer:Locks quando Tempo de Espera de Bloqueio exceder 30 minutos, você deve escolher sobe acima e especificar 30 como valor.

    Outro exemplo: você pode especificar que ocorra um alerta para o objeto de desempenho SQLServer:Transactions quando o espaço livre em tempdb cair abaixo de 1000 KB. Para definir isso, bastaria escolher o contador Espaço livre em tempdb (KB), cai abaixoe um Valor de 1000.

    Observação

    Os dados de desempenho são amostrados periodicamente, o que pode levar a uma pequena demora (alguns segundos) entre o limite a ser atingido e a ocorrência do alerta de desempenho.

    Observação

    Uma variável de log de eventos que armazena o nome do servidor limita-se a 32 caracteres. Portanto, se o tamanho combinado do nome do host e do nome da instância for maior que 32 caracteres, você poderá receber o seguinte erro:

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

Selecionando um evento do WMI

É possível especificar que um alerta ocorra em resposta a um evento do WMI em particular. Para selecionar um evento WMI, é necessário definir os seguintes itens na página SQL Server Geral da caixa de diálogo Novo Alerta ou Propriedades do Alerta do Agent:

  • Namespace

    SQL Server O Agent se registra como um cliente do WMI no namespace do WMI que é fornecido para consulta de eventos.

  • Consulta

    SQL Server O Agent usa a instrução WQL da Instrumentação de Gerenciamento do Windows fornecida para identificar o evento específico.

Encontram-se, a seguir, os links para tarefas comuns:

Para criar um alerta com base em um número de mensagem

Para criar um alerta com base em níveis de severidade

Para criar um alerta com base em um evento do WMI

Para definir uma resposta a um alerta

Para criar uma mensagem de erro de evento definida pelo usuário

Para modificar uma mensagem de erro de evento definida pelo usuário

Para excluir uma mensagem de erro de evento definida pelo usuário

Para desabilitar ou reativar um alerta

Consulte Também

sp_update_alert (Transact-SQL)