Configuração de monitoramento no Pacote de Gerenciamento para SQL Server
Esta seção explica as configurações de monitoramento no Pacote de Gerenciamento para SQL Server.
Regras de alerta do SQL Server Agent: especificidades da configuração
O Pacote de Gerenciamento para SQL Server fornece as seguintes regras de alerta do agente do SQL Server:
- MSSQL no Windows: O mecanismo de alerta foi interrompido devido a erros irrecuperáveis no log de eventos local
- MSSQL no Windows: Falha na conclusão de um trabalho SQL
- MSSQL no Windows: Não é possível executar a etapa do trabalho porque houve falha ao carregar o subsistema
- MSSQL no Windows: O agente é suspeito. Sem resposta nos últimos minutos
- MSSQL no Windows: Não foi possível iniciar o SQL Server Agent
- MSSQL no Windows: Iniciando autoencerramento do SQL Server Agent
- MSSQL no Windows: A etapa de um trabalho provocou uma exceção no subsistema
- MSSQL no Windows: Não é possível conectar o SQL Server Agent ao SQL Server
- MSSQL no Windows: Não é possível reabrir o log de eventos local
Por padrão, essas regras são habilitadas no modo de monitoramento do agente, mas desabilitadas no modo de monitoramento misto porque o Operations Manager não permite que eventos de logs de eventos sejam coletados em computadores remotos. Para alterar isso, você pode substituir cada uma dessas regras ativando a opção AllowProxying .
Observação
Habilitar a opção AllowProxying pode causar a execução remota do código. Não ative essa opção a menos que tenha certeza de que seu computador está protegido.
Nenhuma dessas regras funciona no modo de monitoramento sem agente e não está disponível para SQL no Linux.
Regras de alerta sempre ativo
O Pacote de Gerenciamento para SQL Server tem duas regras de evento para alertas nos casos em que os seguintes eventos aparecem no log de aplicativos do Windows:
ID do evento 1480, função de réplica de banco de dados alterada
ID do evento 19406, função de réplica de disponibilidade alterada
Por padrão, o SQL Server pode não disparar esses eventos no log do aplicativo. Para habilitá-los, execute os seguintes scripts T-SQL:
sp_altermessage 1480, 'with_log', 'true'
sp_altermessage 19406, 'with_log', 'true'
Monitoramento de backup do banco de dados de disponibilidade
O Pacote de Gerenciamento para SQL Server fornece monitores que verificam a existência e a idade de um banco de dados e backups de log, conforme relatado pelo Microsoft SQL Server. Isso é feito através da execução de uma consulta no banco de dados mestre da instância do SQL e do retorno da idade do backup.
Esses monitores estão localizados no pacote cumulativo de dados do estado de disponibilidade do banco de dados do grupo de disponibilidade no modo de exibição Grupo de disponibilidade. A lista de monitores é a seguinte:
- Monitor de status de backup do banco de dados de disponibilidade
- Monitor de status de backup de log de banco de dados de disponibilidade
Monitor de status de backup do banco de dados de disponibilidade
Esse monitor tem como destino a Integridade do Banco de Dados de Disponibilidade e verifica o status do backup do banco de dados de acordo com o limite em dias.
Por padrão, o monitor não rastreia as Preferências de Backup do Grupo de Disponibilidade. Se essa overdrive estiver habilitada, o monitor rastreará o local de backup configurado nas preferências de backup do grupo de disponibilidade e verificará se o backup na réplica selecionada está em conformidade com a configuração de frequência de backup.
As preferências de backup do grupo de disponibilidade selecionado podem ser as seguintes:
Preferir Secundário
Especifica que os backups devem ocorrer em uma réplica secundária, exceto quando a réplica primária for a única réplica online. Nesse caso, o backup deve ocorrer na réplica primária. Essa é a opção padrão.
Somente Secundário
Especifica que os backups nunca devem ser executados na réplica primária. Se a réplica primária for a única réplica online, o backup não deverá ocorrer.
Primário
Especifica que os backups sempre devem ocorrer na réplica primária. Essa opção será útil se você precisar de recursos de backup, como a criação de backups diferenciais que não têm suporte quando o backup é executado em uma réplica secundária.
Qualquer Réplica
Especifica que você prefere que trabalhos de backup ignorem a função das réplicas de disponibilidade ao escolher a réplica para executar backups.
Observação
Os trabalhos de backup podem avaliar outros fatores, como a prioridade de backup de cada réplica de disponibilidade em combinação com seu estado operacional e estado conectado.
Veja a seguir exemplos de como ativar e desativar a opção de configurações de controle no caso de preferências de backup na réplica primária para o Grupo de Disponibilidade, e o arquivo de backup existe somente em uma réplica secundária.
O parâmetro Rastrear preferências de backup está habilitado - para ambas as réplicas de banco de dados, o monitor de Status de Backup do Banco de Dados de Disponibilidade está em um estado Crítico:
O parâmetro Rastrear preferências de backup está desabilitado - somente para a réplica do banco de dados primário, o monitor Status de Backup do Banco de Dados de Disponibilidade está em um estado Crítico:
Monitor de status de backup de log de banco de dados de disponibilidade
Esse monitor tem como destino a Integridade do Banco de Dados de Disponibilidade e verifica o status do backup do log do banco de dados de acordo com o limite em minutos.
O acúmulo de dados de disponibilidade monitora alertas
Status de Backup do Banco de Dados de Disponibilidade e Status de Backup do Banco de Dados de Disponibilidade Os monitores de Status de Backup do Banco de Dados são configurados com a política de rollup "Melhor estado de qualquer membro" e têm os alertas críticos no respectivo rollup por padrão para exibir o status completo do banco de dados no grupo de disponibilidade.
O Banco de Dados de Disponibilidade é a entidade de um banco de dados que pode ser hospedado em várias réplicas, com base nisso, somente o "Status de Backup do Banco de Dados de Disponibilidade (rollup)" tem o alerta, para verificar todo o status do banco de dados de disponibilidade em relação à exibição do status do banco de dados em cada réplica:
Um rollup se torna crítico e gera um alerta somente quando todas as Réplicas de Banco de Dados têm um status crítico de Backup de Banco de Dados ou Backup de Log. Se apenas uma réplica tiver um status crítico de backup de banco de dados ou backup de log, o pacote cumulativo permanecerá íntegro de acordo com a política de acumulação.
Monitoramento de políticas
O Pacote de Monitoramento do SQL Server coleta métricas de integridade dos objetos de bancos de dados e Always On localizados na instância do SQL Server de destino por meio da leitura do estado das políticas do PBM (Gerenciamento Baseado em Políticas) de cada um dos objetos.
Além das políticas do sistema, o pacote de gerenciamento permite o monitoramento de políticas de usuário personalizadas para os seguintes objetos:
- Backup de banco de dados
- Grupo de disponibilidade
- Réplica de Disponibilidade
- Réplica de Banco de Dados
Para cada um desses objetos, o pacote de gerenciamento tem os seguintes monitores:
- Monitor de dois estados com um estado de Aviso . Esse monitor mostra o estado da política de usuário personalizada que tem uma das categorias de aviso predefinidas como Categoria de Política.
- Monitor de dois estados com um estado de erro . Esse monitor mostra o estado da política de usuário personalizada que tem uma das categorias de erro predefinidas como Categoria de Política.
Monitoramento de espaço
O Pacote de Gerenciamento para SQL Server é capaz de executar o monitoramento de espaço coletando um conjunto de métricas nos seguintes níveis:
- Backup de banco de dados
- Grupo de arquivos
- Arquivo
- Arquivo de log
Você pode usar monitores de unidade, bem como métricas de desempenho para visualizar essas informações para vários bancos de dados e para intervalos de tempo longos.
O monitoramento de espaço suporta os seguintes tipos de mídia:
- Armazenamento local e pontos de montagem
- Volumes Compartilhados Clusterizados
- Compartilhamentos SMB
- Blobs do Azure
Depois de importar o Pacote de Gerenciamento para SQL Server, você pode descobrir que alguns dos fluxos de trabalho de monitoramento de espaço estão habilitados por padrão, enquanto outros estão desabilitados. Para fins de redução da carga no ambiente, o monitoramento de espaço é habilitado apenas para o nível do banco de dados e desabilitado para os níveis de grupo de arquivos, arquivo de log, contêiner OLTP in-memory e grupo de arquivos FILESTREAM. Se o seu ambiente for sensível à carga extra, não é recomendável habilitar fluxos de trabalho raramente usados.
Observação
Ao monitorar grupos de arquivos, um alerta só será lançado se todos os arquivos no grupo de arquivos não estiverem íntegros. Se houver pelo menos um arquivo no grupo de arquivos íntegro, nenhum alerta será registrado.
Veja a seguir uma lista que explica o estado padrão de cada um dos fluxos de trabalho de monitoramento de espaço:
- Descobertas habilitadas para Windows e Linux
- Mecanismos de Banco de Dados
- Bancos de dados para um mecanismo de banco de dados
- Descobertas desabilitadas para Windows e Linux
- Grupos de arquivos de banco de dados
- Arquivos de banco de dados
- Arquivo de log de transações
- Grupos de arquivos FILESTREAM
- Grupo de arquivos de dados com otimização de memória
- Contêineres do Grupo de Arquivos de Dados com Otimização de Memória
- Monitores habilitados para Windows
- Direcionado ao banco de dados
- ROWS Dados Espaço livre à esquerda
- LOG Espaço livre restante
- Direcionado ao banco de dados
- Monitores desativados para Windows
- Direcionado ao banco de dados
- Alteração percentual do espaço de dados ROWS
- Dados OLTP na memória Espaço livre restante
- FILESTREAM Dados Espaço livre restante
- Direcionado ao grupo de arquivos
- Espaço Livre Restante no Arquivo do Banco de Dados
- Direcionado ao arquivo de log
- Espaço Livre Restante no Arquivo de Log do Banco de Dados
- Direcionado ao contêiner de dados OLTP in-memory
- Espaço Livre do Contêiner de Grupo de Arquivos de Dados com Otimização de Memória
- Direcionado ao grupo de arquivos FILESTREAM
- Espaço Livre no Grupo de Arquivos FILESTREAM do Banco de Dados
- Direcionado ao banco de dados
- Monitores habilitados para Linux
- Direcionado ao grupo de arquivos
- Espaço Livre Restante no Arquivo do Banco de Dados
- Direcionado ao arquivo de log
- Espaço Livre Restante no Arquivo de Log do Banco de Dados
- Direcionado ao contêiner de dados OLTP in-memory
- Espaço Livre do Contêiner de Grupo de Arquivos de Dados com Otimização de Memória
- Direcionado ao grupo de arquivos
Os monitores a seguir suportam a substituição do Modo de Cálculo de Integridade:
- FILESTREAM Dados Espaço livre restante
- Dados OLTP na memória Espaço livre restante
- Espaço Livre Restante no Arquivo de Log do Banco de Dados
- ROWS Dados Espaço livre à esquerda
Essa substituição permite que você defina como deseja monitorar o espaço livre em seu ambiente. Você pode instruir qualquer um dos monitores acima a acompanhar o estado de saúde com base no parâmetro 'Threshold' expresso como um termo percentual (%) ou como uma métrica de capacidade (MB). Para tornar o monitoramento ainda mais eficiente, use o termo percentual (%) e os limites de métrica de capacidade (MB) simultaneamente, nesse caso, a métrica com o pior estado será usada para relatar o status geral da integridade.
Fluxos de trabalho de monitoramento de espaço desativados para SQL no Linux
Os seguintes fluxos de trabalho são desabilitados por padrão, pois não são fornecidos com os dados necessários pelo SQL Server no Linux:
- Réguas
- MSSQL no Linux: Espaço Livre Total no Grupo de Arquivos de Dados com Otimização de Memória de BD (MB)
- MSSQL no Linux: Espaço Livre Total no Grupo de Arquivos de Dados com Otimização de Memória de BD (%)
- MSSQL no Linux: Espaço Livre Total no Grupo de Arquivos FILESTREAM do BD (%)
- MSSQL no Linux: Espaço Livre Total no Grupo de Arquivos FILESTREAM do BD (MB)
- MSSQL no Linux: Espaço Livre Total no Grupo de Arquivos do BD (%)
- MSSQL no Linux: Espaço Livre Total no Grupo de Arquivos do BD (MB)
- MSSQL no Linux: Espaço Livre Alocado no Grupo de Arquivos do BD (%)
- MSSQL no Linux: Espaço Livre Alocado no Grupo de Arquivos do BD (MB)
- MSSQL no Linux: Espaço Livre Total no BD (MB)
- MSSQL no Linux: Espaço Livre Alocado no BD (MB)
- MSSQL no Linux: Espaço Livre Total do Log de Transações de BD (%)
- MSSQL no Linux: Espaço Usado Alocado no BD (MB)
- MSSQL no Linux: Espaço Livre Total no BD (%)
- MSSQL no Linux: Espaço Livre Total no BD (MB)
- MSSQL no Linux: Espaço Alocado no BD (MB)
- Monitores
- Espaço Livre Restante no Banco de Dados
- Alteração do Percentual de Espaço do Banco de Dados
- Espaço livre do log de transações (%)
- Espaço Livre no Grupo de Arquivos FILESTREAM do Banco de Dados
Monitoramento de status do banco de dados
O monitoramento do status do banco de dados destina-se a verificar o status do banco de dados conforme relatado pelo Microsoft SQL Server. A verificação de status é feita executando uma consulta no banco de dados mestre da instância do SQL Server que retorna o estado do banco de dados. Se você receber um alerta desse monitor, uma ação será necessária para trazer o banco de dados de volta a um estado operacional.
Todos os estados do banco de dados, exceto o ONLINE, resultarão em um estado de monitor não íntegro. A tabela a seguir define os estados de banco de dados.
Estado | Definição |
---|---|
ONLINE | O banco de dados está disponível para acesso. O grupo de arquivos primário está on-line, embora a fase desfazer de recuperação pode não ter sido completada. |
OFFLINE | O banco de dados está indisponível. Um banco de dados se torna off-line por ação explícita do usuário e permanece off-line até que uma ação adicional do usuário seja executada. Por exemplo, o banco de dados pode ser ficar off-line para que um arquivo seja movido para um novo disco. O banco de dados é, então, colocado on-line novamente, após a mudança ter sido concluída. |
RESTORING | Um ou mais arquivos do grupo de arquivos primário está sendo restaurado ou um ou mais arquivos secundários está sendo restaurado off-line. O banco de dados está indisponível. |
RECOVERING | O banco de dados está sendo recuperado. O processo de recuperação é um estado transitório, o banco de dados ficará on-line automaticamente se a recuperação for bem-sucedida. Se a recuperação falhar, o banco de dados se tornará suspeito. O banco de dados está indisponível. |
RECOVERY_PENDING | O SQL Server encontrou um erro relacionado a recurso durante a recuperação. O banco de dados não está danificado, mas arquivos podem ter sido perdidos ou limitações de recursos do sistema podem estar impedindo sua inicialização. O banco de dados está indisponível. Uma ação adicional é exigida do usuário para resolver o erro e permitir que o processo de recuperação seja concluído. |
SUSPECT | Pelo menos o grupo de arquivos primário é suspeito e pode estar danificado. O banco de dados não pode ser recuperado durante a inicialização do SQL Server. O banco de dados está indisponível. Ação adicional pelo usuário é exigida para resolver o problema. |
EMERGENCY | O usuário alterou o banco de dados e definiu o estado como EMERGENCY. O banco de dados está em modo de usuário único e pode ser reparado ou restaurado. O banco de dados está marcado como READ_ONLY, o log está desabilitado e o acesso é limitado aos membros da função de servidor fixa sysadmin . EMERGENCY é usado principalmente para a solução de problemas. Por exemplo, um banco de dados marcado como o suspeito pode ser definido como o estado EMERGENCY. Isso permitiria o acesso somente leitura do administrador de sistema ao banco de dados. Apenas membros da função de servidor fixa sysadmin podem definir um banco de dados com o estado EMERGENCY. |
Para obter mais informações, consulte Database States.
O monitor também dá suporte à substituição "Desabilitar se o Grupo de Disponibilidade estiver offline" para ambientes baseados no Windows. Quando essa substituição é definida como true e o Grupo de Disponibilidade que hospeda o banco de dados não está disponível, o monitor para de acompanhar o estado desse banco de dados. Essa substituição é útil, pois ajuda a evitar a profusão de alertas que poderá ocorrer ao trabalhar com o SQL Server 2012 devido às especificidades de sua arquitetura. Para versões superiores do SQL Server, essa substituição não é necessária.
Muitos bancos de dados na mesma unidade
O monitoramento de espaço no pacote de gerenciamento pode ser barulhento em ambientes em que muitos bancos de dados compartilham a mesma mídia e têm a configuração de crescimento automático habilitada. Nesses casos, é gerado um alerta para cada banco de dados quando a quantidade de espaço livre no disco rígido alcança o limite.
Para reduzir o ruído, desative o monitoramento de espaço para arquivos de log de transações e dados e use o Pacote de Gerenciamento do Sistema Operacional para monitorar o espaço no disco rígido.
Monitoramento de latência de armazenamento de BD
O Pacote de Gerenciamento para SQL Server coleta métricas de desempenho de Latência de Leitura de Disco de Banco de Dados (ms) e Latência de Gravação de Disco de Banco de Dados (ms) para cada banco de dados. Além disso, o pacote de gerenciamento define dois monitores associados que registram alertas em casos de degradação significativa do desempenho. Esses monitores e regras de desempenho são desabilitados por padrão. Habilite-os apenas para bancos de dados específicos quando necessário.
Sessões bloqueadas
O monitor de Sessões de Bloqueio foi projetado para consultar cada banco de dados em busca de uma sessão bloqueada durante um período de tempo significativo. Se o bloqueio for detectado e exceder o limite especificado, o estado será alterado e um alerta será gerado.
Você pode aplicar uma substituição para alterar o parâmetro WaitMinutes usado para determinar se a sessão bloqueada deve ser considerada de longa duração. O valor padrão deste parâmetro é um minuto.
Monitor de status de configuração de protegíveis
Esse monitor verifica se cada um dos protegíveis do SQL Server necessários está acessível na Conta Executar como configurada.
Veja a seguir uma lista completa de protegíveis que são verificados pelo monitor direcionado ao Mecanismo de Banco de Dados do SQL Server:
Permissões no nível do servidor
- VIEW SERVER STATE
- VIEW ANY DEFINITION
- VIEW ANY DATABASE
Permissão SELECT em exibições de gerenciamento dinâmico
- master.sys.dm_hadr_availability_group_states
- master.sys.dm_hadr_availability_replica_states
- master.sys.dm_hadr_database_replica_cluster_states
- master.sys.dm_os_contadores_de_desempenho
- master.sys.dm_tran_transações_ativas
- master.sys.dm_tran_session_transactions
- master.sys.dm_exec_sessions
- master.sys.dm_exec_requests
- master.sys.dm_exec_connections
- master.sys.dm_os_sys_info
- master.sys.dm_os_ring_buffers
- master.sys.dm_os_volume_stats
- master.sys.dm_os_threads
- master.sys.dm_server_services
- master.sys.dm_db_xtp_checkpoint_files
- master.sys.dm_db_xtp_table_memory_stats
- master.sys.dm_db_xtp_hash_index_stats
- master.sys.dm_resource_governor_resource_pools
- master.sys.dm_db_index_estatísticas_físicas
Permissão SELECT em exibições de catálogo
- master.sys.dm_os_host_info
- master.sys.grupos_de_disponibilidade
- master.sys.databases
- master.sys.arquivos_de_banco de dados
- master.sys.tables
- master.sys.grupos de arquivos
- master.sys.syscolunas
- master.sys.sysprocessos
- master.sys.availability_replicas
- master.sys.database_mirroring
- master.sys. Configurações
- master.sys.índices
- msdb.dbo.syspolicy_policies
- msdb.dbo.syspolicy_conditions
- msdb.dbo.syspolicy_policy_execution_history
- msdb.dbo.syspolicy_configuration
- msdb.dbo.syspolicy_system_health_state
- msdb.dbo.syspolicy_object_sets
- msdb.dbo.syspolicy_policy_categories
- msdb.dbo.syspolicy_target_sets
- msdb.dbo.syspolicy_target_set_levels
- msdb.dbo.syspolicy_policy_execution_history_details
- msdb.dbo.sysjobschedules
- msdb.dbo.syscategorias
- msdb.dbo.sysjobs_view
- msdb.dbo.sysjobactivity
- msdb.dbo.sysjobhistory
- msdb.dbo.syssessões
- msdb.dbo.log_envio_primário_bancos de dados
- msdb.dbo.log_envio_bancos_de_dados_secundários
- msdb.dbo.backupset
Permissão EXECUTE em procedimentos armazenados
- master.sys.sp_enumerrorlogs
- master.sys.xp_readerrorlog
- master.sys.xp_instance_regread
- msdb.dbo.sp_help_job
- msdb.dbo.agent_datetime
- msdb.dbo.SQLAGENT_SUSER_SNAME
Veja a seguir uma lista completa de protegíveis verificados pelo monitor direcionado aos bancos de dados do SQL Server:
- Permissão SELECT em exibições de catálogo
- sys.database_files
- sys.tables
- sys.filegroups
- sys.syscolumns
Observação
Alguns monitores podem ter propriedades com sublinhado duplo em seus nomes. Essas propriedades são usadas para fins de pacote de gerenciamento interno; Certifique-se de não usá-los.
Monitor de Estado de Integridade do WMI
Esse monitor verifica se a Conta Executar como configurada tem acesso aos seguintes namespaces localizados no SQL Server de destino:
- RAIZ\CIMV2
- ROOT\Microsoft\SqlServer
- ROOT\Microsoft\SqlServer\ComputerManagement11
- ROOT\Microsoft\SqlServer\ComputerManagement12
- ROOT\Microsoft\SqlServer\ComputerManagement13
- ROOT\Microsoft\SqlServer\ComputerManagement14
- ROOT\Microsoft\SqlServer\ComputerManagement15
- ROOT\Microsoft\SqlServer\ComputerManagement16
O monitor produz um alerta nos casos em que não há acesso a nenhum dos namespaces acima.
Monitoramento de trabalhos do SQL Server Agent
O Pacote de Gerenciamento para SQL Server é capaz de executar trabalhos de agente para SQL Server de monitoramento de disponibilidade e desempenho com os seguintes fluxos de trabalho:
Monitor de status das últimas execuções
Esse monitor verifica todos os trabalhos no SQL Agent e, se algum dos trabalhos não tiver sido concluído com êxito, o monitor alterará seu estado para Aviso. Isso não gera um alerta porque há uma substituição para desabilitar alertas para controlar o ruído. Se você quiser esse nível de monitoramento, precisará substituir Gera Alertas novamente para habilitado.
O monitor tem a substituição do limite Número de falhas, que indica quantas vezes um trabalho do SQL Agent pode falhar antes que o estado do monitor seja alterado para Aviso. A substituição Define o status Cancelado como Falha pode rastrear o status da última execução do trabalho Cancelado como Falha.
Monitor de trabalhos de longa duração
Este monitor verifica os trabalhos de longa execução do SQL Agent. Um alerta de Aviso ou Erro será exibido se um trabalho estiver em execução por mais tempo do que os limites configurados - Limite de Aviso (minutos) e Limite Crítico (minutos).
Por padrão, esse monitor não monitora trabalhos que têm o tipo de agendamento Iniciar automaticamente quando o SQL Server Agent é iniciado , pois esses trabalhos geralmente são executados até que o SQL Agent pare (ou seja, continuamente). Normalmente, a Replicação do SQL Server usa esses trabalhos, mas, em alguns casos, os trabalhos com o tipo de agendamento Iniciar automaticamente quando o SQL Server Agent inicia podem ser executados por um intervalo relativamente curto. Para monitorar esses trabalhos, substitua o parâmetro Trabalhos Incluídos Executados Continuamente por uma lista delimitada por vírgulas dos nomes dos trabalhos. O nome do trabalho na lista deve atender aos requisitos de uma das seguintes classes de identificador:
Regular
- Pode conter qualquer caractere, exceto o sinal de vírgula (,) e aspas duplas (").
- Não deve começar ou terminar com nenhum dos caracteres de espaço em branco.
Delimitado
- Pode conter qualquer caractere e deve ser delimitado por aspas duplas.
- As aspas duplas devem ser evitadas dobrando-as.
Qualquer nome pertencente a qualquer uma das classes acima deve ter de 1 a 128 caracteres, excluindo os caracteres delimitadores.
Monitor de duração do trabalho
Esse monitor verifica todos os trabalhos no SQL Agent e se algum deles demora mais do que o limite especificado. Um alerta de Aviso ou Erro será exibido se a duração de um trabalho for maior que os limites configurados - Limite de Aviso (minutos) e Limite Crítico (minutos). Isso não gera um alerta porque há uma substituição para desabilitar alertas para controlar o ruído. Se você quiser esse nível de monitoramento, precisará substituir Gera Alertas novamente para habilitado ou usar a regra de alerta Duração do Trabalho.
Regra de alerta de duração do trabalho
Essa regra verifica se o tempo de execução de qualquer um dos trabalhos do SQL Agent excedeu o limite especificado em minutos e gera um alerta se o tempo de execução tiver violado o limite.
Regra de desempenho de Duração do Trabalho
Essa regra coleta a duração em minutos de qualquer um dos trabalhos do SQL Agent.
Monitoramento de certificado de criptografia de conexão do SQL Server
O Pacote de Gerenciamento para SQL Server fornece o monitor capaz de executar o status do certificado de criptografia de conexão do SQL Server.
O SQL Server pode usar o Protocolo TLS para criptografar dados transmitidos em uma rede entre uma instância do SQL Server e um aplicativo cliente. O TLS usa um certificado para implementar a criptografia. A habilitação da criptografia TLS aumenta a segurança dos dados transmitidos pelas redes entre instâncias do SQL Server e aplicativos. Para obter mais informações, consulte Visão geral do certificado e Artigos de procedimentos de certificado.
Esse monitor tem como destino o Mecanismo de Banco de Dados do SQL Server no Windows e no Linux e verifica o período de validação do certificado em dias e os requisitos do certificado.
Importante
O SQL Server não será iniciado se houver um certificado no repositório do computador, mas atender apenas a alguns requisitos na lista acima e se ele for configurado manualmente para uso pelo SQL Server Configuration Manager ou por meio de entradas do Registro (somente para SQL Server no Windows). Selecione outro certificado que atenda a todos os requisitos ou remova o certificado de ser usado pelo SQL Server até que você possa provisionar um que atenda aos requisitos. Para obter mais informações, consulte o artigo Configurar o SQL Server para criptografia .
A tabela a seguir define os parâmetros de substituição do monitor e ajusta os requisitos de validação de certificado para SQL Server:
Substituir nome | Descrição |
---|---|
Nomes de host adicionais para verificar | Por padrão, o monitor verifica se o certificado contém o nome principal do mecanismo de banco de dados de destino. Essa substituição permite verificar com uma lista separada por vírgulas de nomes de host adicionais, como nome DNS do ouvinte Always On, alias DNS da máquina de hospedagem, nome virtual FCI etc. |
O certificado deve ser configurado (somente para SQL Server no Windows) | Se true, o monitor alterará seu estado para Crítico quando um mecanismo de banco de dados não tiver um certificado configurado explicitamente. |
Ignorar verificação de 'Raiz não confiável' | Se for verdadeiro, o monitor ignorará que o certificado não foi colocado nas Autoridades de Certificação Raiz Confiáveis. Se colocados, esses certificados são confiáveis para o sistema operacional e podem ser usados por aplicativos como uma referência para os quais hierarquias de PKI (infraestrutura de chave pública) e certificados digitais são confiáveis. |
Definir sinalizador 'IgnoreCertificateAuthorityRevocationUnknown' | Ignorar que a revogação da autoridade de certificação é desconhecida ao determinar a verificação do certificado. |
Definir sinalizador 'IgnoreCtlNotTimeValid' | Ignorar que a CTL (lista de certificados confiáveis) é inválida, por motivos como a CTL ter expirado, ao determinar a verificação do certificado. |
Definir sinalizador 'IgnoreCtlSignerRevocationUnknown' | Ignorar que a revogação do signatário da CTL (lista de certificados confiáveis) é desconhecida ao determinar a verificação do certificado. |
Definir sinalizador 'IgnoreEndRevocationUnknown' | Ignorar que a revogação do certificado final (o certificado do usuário) é desconhecida ao determinar a verificação do certificado. |
Definir sinalizador 'IgnoreInvalidBasicConstraints' | Ignorar que as restrições básicas são inválidas ao determinar a verificação do certificado. |
Definir sinalizador 'IgnoreInvalidPolicy' | Ignorar que o certificado tem uma política inválida ao determinar a verificação do certificado. |
Definir sinalizador 'IgnoreNotTimeNested' | Ignorar que o certificado da AC (autoridade de certificação) e o certificado emitido têm períodos de validade que não estão aninhados ao verificar o certificado. Por exemplo, o certificado da AC pode ser válido de 1º de janeiro a 1º de dezembro e o certificado emitido de 2 de janeiro a 2 de dezembro, ou seja, os períodos de validade não estão aninhados. |
Definir sinalizador 'IgnoreNotTimeValid' | Ignorar certificados na cadeia que são inválidos porque expiraram ou ainda não estão em vigor ao determinar a validade do certificado. |
Definir sinalizador 'IgnoreRootRevocationUnknown' | Ignorar que a revogação da raiz é desconhecida ao determinar a verificação do certificado. |
Definir sinalizador 'IgnoreWrongUsage' | Ignorar que o certificado não foi emitido para o uso atual ao determinar a verificação do certificado. |
Ignorar a verificação de 'Nome do host' | Se true, o monitor ignorará a verificação de que o certificado contém nomes de host específicos. |
Ignorar a verificação de 'Autenticação do servidor de uso de chave' | Se true, o monitor ignorará o requisito de certificado de autenticação do servidor da presença da extensão de uso da chave 'Autenticação do Servidor'. Algumas implementações de driver de conexão podem não verificar a existência dessa extensão e podem considerar o certificado válido mesmo sem a extensão. |
Ignorar a verificação de "Revogação" | Se for verdadeiro, o monitor ignorará todos os problemas relacionados à revogação. |
Monitoramento do status de backup do certificado TDE (Transparent Data Encryption)
O Pacote de Gerenciamento para SQL Server fornece o monitor capaz de verificar se o certificado usado para criptografar a chave de criptografia do banco de dados não foi copiado.
A TDE (Transparent Data Encryption) criptografa o armazenamento de um banco de dados inteiro usando uma chave simétrica chamada chave de criptografia de banco de dados. A chave de criptografia do banco de dados também pode ser protegida usando um certificado, protegido pela chave mestra do banco de dados mestre. A TDE realiza a criptografia e a descriptografia de E/S em tempo real dos arquivos de log e de dados. A criptografia usa uma DEK (chave de criptografia de banco de dados). O registro de inicialização do banco de dados armazena a chave para disponibilidade durante a recuperação. A DEK é uma chave simétrica e protegida por um certificado que o banco de dados mestre do servidor armazena ou por uma chave assimétrica que um módulo EKM protege. A TDE protege os dados "em repouso", que são os dados e os arquivos de log. Ele permite que você siga muitas leis, regulamentos e diretrizes estabelecidos em vários setores. Isso permite que os desenvolvedores de software criptografem dados usando algoritmos de criptografia AES e 3DES, sem alterar os aplicativos existentes. Para obter mais informações, consulte os artigos Práticas recomendadas de segurança do SQL Server e TDE (criptografia transparente de dados).
Observação
O TDE não está disponível para bancos de dados do sistema. Ele não pode ser usado para criptografar mestre, modelo ou msdb. tempdb é criptografado automaticamente quando um banco de dados de usuário habilita o TDE, mas não pode ser criptografado diretamente.
Monitoramento de consultas de longa duração
O Pacote de Gerenciamento para SQL Server fornece a regra capaz de gerar um alerta se o tempo de execução de qualquer uma das consultas SQL em execução tiver excedido o limite especificado (em segundos).
A regra dá suporte à filtragem de personalização de alertas com as seguintes substituições:
- Lista de exclusão de aplicativos - para excluir a consulta com o nome do aplicativo
- Lista de exclusão de banco de dados - para excluir a consulta com o nome do banco de dados
- Lista de exclusão de consulta - para excluir a consulta com texto de consulta personalizado
Essas substituições dão suporte a curingas e podem ser usadas para excluir consultas de longa duração com o nome do aplicativo, o nome do banco de dados ou o próprio texto da consulta com valores separados por vírgula. Por exemplo, use condições como *test
excluir consultas que terminam com _test
, ou Test*
excluir consultas que começam com Test
, ou *test*
condition para excluir consultas que tenham uma test
entrada em qualquer parte do texto da consulta.
Se um elemento contiver um asterisco (*) que não seja um curinga, aspas duplas (") ou barra invertida (\), o elemento deverá ser escapado com uma barra \
invertida . Por exemplo, use condições como Query\*3
excluir consultas que tenham Query*3
no texto da consulta, use condições como \\path\\to\\
excluir consultas que tenham \path\to\
no texto da consulta ou "GO, WITH"
condição para excluir consultas que tenham uma "GO, WITH"
entrada com uma vírgula dentro do texto da consulta. Substituições com listas de exclusão podem ser usadas simultaneamente.
A tabela a seguir define padrões curinga que você pode usar em expressões:
Caractere | Descrição | Exemplo |
---|---|---|
? | Corresponde a qualquer caractere único. Você pode usar o ponto de interrogação (?) em qualquer lugar em uma cadeia de caracteres. | Quer? localiza Query, Quer1, Quer_, Quer?, Quer*, mas não Query1 ou Queries. |
* | Corresponde a qualquer número de caracteres. Você pode usar o asterisco (*) em qualquer lugar em uma cadeia de caracteres. | DB* localiza DBs, DB1, DB2, DB_prod, mas não 1DB ou Banco de Dados. *O banco de dados encontra 1DB, _DB, test-DB, mas não 1DB_prod ou D_Base. *DB* localiza cloudDB_1, DBtest, 3DB, mas não prod_D_B ou Banco de Dados. |
" | Corresponde a qualquer número de caracteres entre aspas duplas. Você pode usar as aspas duplas (" ") em qualquer lugar em uma cadeia de caracteres. Se uma cadeia de caracteres contiver uma vírgula, a cadeia de caracteres deverá ser colocada entre aspas. | "Instance, Database" localiza uma Instance, Database string com uma vírgula dentro, mas não uma string de Instância separadamente e uma string de Database separadamente. " Consulta com espaços à esquerda e à direita " localiza uma entrada com todos os espaços incluídos entre aspas duplas. |
A tabela a seguir define padrões de escape que você pode usar em expressões:
Caractere | Descrição | Exemplo |
---|---|---|
\* | Não é um curinga. Escapa o asterisco (*) em qualquer lugar em uma cadeia de caracteres. | dbname\* localiza dbname*, mas não dbname1, dbname_prod, dbnames. |
\" | Não é um curinga. Escapa as aspas duplas (") em qualquer lugar em uma cadeia de caracteres. | A consulta \"exemplo\" localiza a consulta "exemplo", mas não a consulta\, exemplo de consulta ou "exemplo". |
\\ | Não é um curinga. Escapa a barra invertida (\) em qualquer lugar em uma cadeia de caracteres. | C:\\Caminho\\para\\ localiza C:\Caminho\para\, mas não C:\, Caminho\\para. |
Observação
Essa regra não fornece os textos de execução de consultas por motivos de segurança.