Monitorando Clusters de Aplicativos Reais do Oracle

Após instalar o agente de host do Instana, o sensor Oracle para Real Application Clusters (RAC) é instalado automaticamente, mas é necessário configurar o sensor Oracle para RAC conforme descrito na seção Configuração. Em seguida, você pode visualizar as métricas relacionadas a um RAC do ` Oracle ` na interface do usuário do ` Instana `.

Informações complementares

Sistemas Operacionais com Suporte

O sensor RAC do Oracle é compatível com o sistema operacional em todos os hosts nos quais o agente d Instana está em execução. Você pode consultar a seção “Sistemas operacionais compatíveis” de cada agente de host, como, por exemplo, “Sistemas operacionais compatíveis com o Unix ”.

Versões suportadas

Consulte as seguintes versões suportadas para métricas e dados de configuração:

  • Oracle Database 19c
  • Oracle Database 21c

Somente o monitoramento remoto é suportado para o sensor RAC do Oracle

Conhecendo o RAC d Oracle

Use a opção de configuração remota para detectar e monitorar bancos de dados RAC do ` Oracle ` que sejam executados em hosts nos quais o agente ` Instana ` não possa ser instalado.

Configurando

Concedendo Permissões do banco de dados

Para conectar o sensor ao Oracle RAC e monitorar as métricas e a configuração, é necessário ter a permissão read para as tabelas a seguir:

#Create a role
create ROLE INSTANAROLE;

#Note: For Oracle Container Database (CDB), common roles must follow the naming convention C##<role_name>
#Example for CDB: create ROLE C##INSTANAROLE;#Grant privileges to this role for following tables and views

GV_$SESSION, GV_$BGPROCESS, GV_$ACTIVE_SESSION_HISTORY, GV_$SYSSTAT, GV_$SGASTAT, GV_$LIBRARYCACHE, GV_$LATCH, GV_$ROWCACHE, GV_$RESOURCE_LIMIT, GV_$STATNAME, GV_$SESSTAT, GV_$PROCESS, GV_$SQLAREA, GV_$PARAMETER, GV_$SQL, V_$VERSION, GV_$SYS_TIME_MODEL, GV_$SYSTEM_WAIT_CLASS, GV_$INSTANCE,  GV_$LOCK, DBA_HIST_SQLTEXT, DBA_HIST_SQLSTAT, DBA_HIST_SNAPSHOT,DBA_HIST_ACTIVE_SESS_HISTORY, DBA_USERS, DBA_OBJECTS, DBA_TABLESPACE_USAGE_METRICS, DBA_DATA_FILES, DBA_TEMP_FILES

eg. GRANT SELECT ON GV_$SESSION to INSTANAROLE;

#Assign this role to a user. Configure the same user in the configuration yaml file. For more information, see the [sensor configuration](#sensor-configuration) section.
GRANT INSTANAROLE to <user>;

#The following tables/views require the Oracle Diagnostic Pack license.
V$ACTIVE_SESSION_HISTORY, DBA_HIST_SNAPSHOT, DBA_HIST_SQLSTAT, DBA_HIST_SQLTEXT, DBA_HIST_ACTIVE_SESS_HISTORY
 

Configurando um sensor RAC d Oracle

Para monitorar um RAC d Oracle, é necessário informar ao agente do host as credenciais necessárias para acessar as informações de monitoramento, utilizando o arquivo de configuração do agente :

Ativação do monitoramento RAC no Oracle

Para ativar o monitoramento do Oracle RAC, deve-se configurar a sinalização enableRacMonitoring como true.

com.instana.plugin.oracledb:
  remote: # we support listing multiple Oracle RACs here!
    - host: '<ORCL_HOST>' # SCAN_HOSTNAME or SCAN_IP'
      port: '<ORCL_PORT>'
      user: '<ORCL_USER>' # default is 'sys as sysdba'
      password: '<ORCL_PASSWORD>'
      databaseServiceName: '<ORCL_DB_SERVICE_NAME>' # for Oracle RAC, SID is not required only ServiceName
      availabilityZone: 'Oracle-RAC-AZ' # default is 'Oracle-RAC-AZ
      poll_rate: 1
      enableRacMonitoring: true # default is false. For Oracle RAC set this to true.
      enableUniqueIdentifier: false # Default is false. Set to true only if you are monitoring multiple databases with identical SID/service names. Keep false for standard configurations
 

A taxa de pesquisa define a frequência com que o sensor pesquisa métricas do Oracle RAC, em segundos. O padrão é 1 segundo.

No mapa de Infraestrutura, a instância remota do Oracle RAC aparece como uma caixa separada com o nome especificado na chave availabilityZone no arquivo configuration.yaml . Para localizar a instância, digite entity.type:oracleDB na barra de pesquisa do Dynamic Focus do Instana.

Configurando a sondagem personalizada

A tabela a seguir exibe as métricas para as quais é possível configurar no máximo três taxas de pesquisa customizadas diferentes de zero. As métricas com uma taxa de pesquisa como zero ou menor que zero são desativadas por padrão. Para desativar qualquer métrica, remova a entrada correspondente do arquivo de *instanaAgentDir*/etc/instana/configuration.yamlconfiguração.

Nome Descrição
TOP_CONSULTA_TEMPO_TRANSCORRIDO Lista de principais consultas de tempo decorrido
SQL_ID_CONSUMINDO_MAIS_CPU Lista de SQLs que consomem mais CPU..
SESSÕES EM PRIMEIRO PLANO DO USUÁRIO Exibe as sessões de primeiro plano ativas
TOP_10_SQL_HIGH_IO_LAST_1_HR Lista dos dez principais SQL com E/S alta na última 1 hora. Esta métrica requer a licença do Pacote de Diagnóstico do Oracle para as visualizações especificadas na seção Concessão de permissões de banco de dados.
TOP_TEN_SESSÕES_QUE_MAIS_CONSUMEM_CPU Lista das principais sessões de consumo de CPU
TOP_CPU_CONSUMING_SESSION_LAST_10_MIN Lista de principais CPUs que consomem sessões nos últimos 10 minutos Esta métrica requer a licença do Pacote de Diagnóstico do Oracle para as visualizações especificadas na seção Concessão de permissões de banco de dados.
SESSÕES_EM_BLOQUEIO_ATUAIS Usado para visualizar informações sobre as sessões de bloqueio..
LIBRARY_CACHE_HIT_RATIO A proporção indica o número de solicitações de pin que resultam em ocorrências de pin.
ACTIVE_SESSIONS_RUNNING_MORE_THAN_600_SECS Todas as sessões ativas que estão em execução por mais de 10 minutos, no banco de dados Oracle
HISTÓRICO_DE_SESSÕES_ATIVAS Atividade de sessão de amostra no banco de dados.. Esta métrica requer a licença do Pacote de Diagnóstico do Oracle para as visualizações especificadas na seção Concessão de permissões de banco de dados.
TOP_10_SQL_HIGH_IO_LAST_24_HR Lista dos dez principais SQL com E/S alta nas últimas 24 horas Esta métrica requer a licença do Pacote de Diagnóstico do Oracle para as visualizações especificadas na seção Concessão de permissões de banco de dados.
TOP_CPU_QUERIES_LAST_24_HRS Lista das principais consultas de consumo de CPU nas últimas 24 horas Esta métrica requer a licença do Pacote de Diagnóstico do Oracle para as visualizações especificadas na seção Concessão de permissões de banco de dados.
CONSULTAS_QUE_NÃO_UTILIZAM_VARIÁVEIS_DE_BINDING Lista de consultas que não usam a variável bind no código.
Importante: Para as demais métricas do RAC do Oracle (listadas na tabela de métricas de desempenho ), o Instana utiliza uma taxa de sondagem padrão de 1‑second. Essa taxa só pode ser configurada no nível do grupo. Você pode aumentar a frequência de sondagem para todo o grupo de métricas “ 1‑second ”, mas não é possível definir frequências diferentes para cada métrica individual dentro desse grupo.

Consulte a configuração a seguir para pesquisa customizada:

com.instana.plugin.oracledb:
  remote: # Instana supports listing of multiple Oracle RACs.
    - host: '<ORCL_HOST>' # SCAN_HOSTNAME or SCAN_IP'
      port: '<ORCL_PORT>'
      user: '<ORCL_USER>' # default is 'sys as sysdba'
      password: '<ORCL_PASSWORD>'
      databaseServiceName: '<ORCL_DB_SERVICE_NAME>' # for Oracle RAC, SID is not required, requires only ServiceName
      availabilityZone: 'Oracle-RAC-AZ' # default is 'Oracle-RAC-AZ
      poll_rate: 1
      enableRacMonitoring: true
      enableUniqueIdentifier: false # Default is false. Set to true only if you are monitoring multiple databases with identical SID/service names. Keep false for standard configurations
      customPolling:
        - poll_rate: 30
          metrics:
            - TOP_CPU_CONSUMING_SESSION_LAST_10_MIN
            - ACTIVE_SESSIONS_RUNNING_MORE_THAN_600_SECS
            - LIBRARY_CACHE_HIT_RATIO
            - CURRENT_BLOCKING_SESSIONS
        - poll_rate: 60
          metrics:
            - TOP_ELAPSED_TIME_QUERIES
            - TOP_TEN_CPU_CONSUMING_SESSION
            - SQL_ID_CONSUMING_MORE_CPU
            - USER_FOREGROUND_SESSIONS
            - TOP_10_SQL_HIGH_IO_LAST_1_HR
            - ACTIVE_SESSION_HISTORY
        - poll_rate: 3600
          metrics:
            - TOP_10_SQL_HIGH_IO_LAST_24_HR
            - TOP_CPU_QUERIES_LAST_24_HRS
            - QUERIES_NOT_USING_BINDING_VARIABLES
 

Visualizando as métricas

Para visualizar as métricas, conclua as seguintes etapas:

  1. Selecione “Infraestrutura” na barra lateral da interface do usuário do Instana.
  2. Clique em um host monitorado específico É possível ver um painel do host com todas as métricas coletadas e processos monitorados.

O sensor Oracle monitora e coleta os dados a seguir:

Dados de configuração

O sensor Oracle coleta os dados de configuração a seguir:

Item de configuração Descrição
Versão Oracle número da versão do banco de dados
SID Identificador do sistema (SID): nome exclusivo da instância do banco de dados do Oracle
Nomes de serviço Nomes de serviços de rede usados para se conectar ao banco de dados
Horário de início Data e hora em que a instância do banco de dados foi iniciada
Contagem de CPUs Número de CPUs disponíveis para a instância do banco de dados
Máximo de sessões Número máximo de sessões simultâneas permitidas
Tamanho do bloco do BD Tamanho dos blocos do banco de dados
Porta TCP número da porta na qual o listener do banco de dados do Oracle aceita conexões (padrão: 1521)
Contagem de instâncias Número de instâncias ativas no cluster RAC do Oracle

Métricas de desempenho

Métrica Descrição Granularidade
Contagem de processos em execução Número de processos em execução. 1 segundo
Uso de limite de processo O uso do recurso de processo O processo é exibido em porcentagem 1 segundo
Sessões ativas (Mais de 10 min) Todas as sessões ativas no banco de dados Oracle por mais de 10 minutos.. 30 segundos
Utilização máxima do processo Consumo máximo de processo após a última inicialização da instância 1 segundo
Processar Utilização Atual Número de processos usados. 1 segundo
Alocação inicial do processo Alocação inicial do processo. Essa alocação é igual ao valor especificado para o processo no arquivo de parâmetro de inicialização. 1 segundo
Valor Limite do Processo Valor limite máximo de um processo. O valor do processo deve permanecer dentro deste limite. 1 segundo
Uso de limite de processo A porcentagem de todos os processos atuais para o conjunto de limites 1 segundo
Tempo por segundo do DB Quantia de tempo decorrido que é gasta na execução das chamadas de nível do usuário do banco de dados 1 segundo
Tempo de CPU do DB Quantia de tempo de CPU que é gasto na execução das chamadas no nível do usuário do banco de dados 1 segundo
Tempo de execução de SQL A quantidade de tempo decorrido durante o qual as instruções de consulta SQL estão em execução 1 segundo
Tempo de análise Quantia de tempo decorrido gasto analisando as instruções de consulta SQL. Ele inclui o tempo de análise suave e difícil. 1 segundo
Razão de Tempo de CPU do Banco de Dados Quantia de CPU usada no banco de dados pela quantia de tempo total do banco de dados 1 segundo
Tempo de Espera por Segundo Tempo de espera por segundo para E/S do usuário, Outro, E/S do Sistema, Simultaneidade, Planejador, Aplicativo, Confirmação, Configuração, Administrativo, Rede e Enfileiramento 1 segundo
Taxa de acertos do cache da biblioteca (Acertos de pin) A proporção indica o número de solicitações de pin que resultam em ocorrências de pin. 30 segundos
Memória Total de SGA Memória total em System Global Area (SGA) em MB. 1 segundo
Memória usada do SGA Memória usada pelo SGA em MB. 1 segundo
Memória Livre de SGA. " Memória livre em SGA em MB.. 1 segundo
Nome do Conjunto SGA Nome do conjunto da System Global Area (SGA). 1 segundo
Memória Total do Conjunto de SGA Total de memória no Conjunto SGA em MB 1 segundo
Memória Usada do Conjunto SGA Memória usada no Conjunto de SGA em MB 1 segundo
Contagem de Execução de SQL Número total de consultas SQL executadas. 1 segundo
Tempo Médio de Execução de SQL. Tempo médio de execução SQL. 1 segundo
Contagem de análises de SQL Contagem de análise hard e total. 1 segundo
Taxa de análises de SQL Proporção de execuções SQL que são executadas com análise sintática e sem quaisquer análises. 1 segundo
Chamadas do usuário Número de chamadas, confirmações e recuperações. 1 segundo
Taxa de acertos do cache do buffer Porcentagem de páginas localizadas no cache do buffer sem precisar ler a partir do disco. 1 segundo
Leituras de Sessão Física e Lógica O número de leituras físicas e lógicas 1 segundo
Sessões Número de sessões do usuário (ativas e inativas) e o número de sessões em segundo plano. 1 segundo
Uso do Espaço de Tabela Uso de espaço de tabelas (permanente, temporário e desfazer) em GB, uso de espaço de tabelas em porcentagem, tamanho máximo do espaço de tabela e sinalizador autoextensível. 1 segundo
Instâncias RAC ativas Número de instâncias ativas em um RAC. Essa métrica não está disponível no painel integrado. No entanto, você pode criar um painel personalizado ou configurar eventos ou alertas utilizando essa métrica para acionar notificações quando o número de instâncias ativas ficar abaixo de um limite definido. 1 segundo
Principais consultas de CPU (últimas 24 horas) Lista das principais consultas de CPU nas últimas 24 horas com tempo de CPU em milissegundos, número de leituras de disco, e duração total durante a qual a consulta é executada Esta métrica requer a licença do Pacote de Diagnóstico do Oracle para as visualizações especificadas na seção Concessão de permissões de banco de dados. 1 hora
Consultas que não estão usando a variável de ligação Lista de consultas que não usam a variável bind no código com número de cópias de consulta, número de execuções de consulta e memória total que é consumida por consultas SQL em MB. 1 hora
Principais consultas de tempo decorrido Lista de principais consultas de tempo decorrido com ID SQL, consulta SQL e tempo de execução em minutos. 60 Segundos
Histórico de sessões ativas (Última hora) Atividade de sessão de amostra no banco de dados para a última hora com ID SQL, porcentagem de carregamento e contagem de sessões. Esta métrica requer a licença do Pacote de Diagnóstico do Oracle para as visualizações especificadas na seção Concessão de permissões de banco de dados. 60 Segundos
Dez Principais Sessões de Consumo de CPU. Lista das dez principais sessões de consumo de CPU com ID de sessão, número de série, tempo de CPU em minutos e nome do programa do sistema operacional. 60 Segundos
Principais sessões de consumo de CPU (últimos 10 minutos) Lista das principais sessões de consumo de CPU nos últimos 10 minutos com ID de sessão, número de série e duração total durante os quais a consulta é executada. Esta métrica requer a licença do Pacote de Diagnóstico do Oracle para as visualizações especificadas na seção Concessão de permissões de banco de dados. 30 segundos
Dez Principais SQL com E/S Alta (Última 1 Hr) Lista das dez principais consultas SQL com E/S alta na última hora com ID SQL, nome do usuário e tempo total de espera em milissegundos. Esta métrica requer a licença do Pacote de Diagnóstico do Oracle para as visualizações especificadas na seção Concessão de permissões de banco de dados. 60 Segundos
Sessões de bloqueio atuais Informações sobre as sessões de bloqueio.. 30 segundos
Sessões de primeiro plano Sessões de primeiro plano ativas 60 Segundos
SQL consumindo mais CPU Lista de consultas SQL que usam mais CPU.. 60 Segundos
Dez Principais SQL com Alto IO Último 24 Hr Lista das dez principais consultas SQL com alta E/S nas últimas 24 horas Esta métrica requer a licença do Pacote de Diagnóstico do Oracle para as visualizações especificadas na seção Concessão de permissões de banco de dados. 1 hora

Assinaturas de funcionamento

Para cada sensor, uma base de conhecimento curada de assinaturas de funcionamento é avaliada continuamente com relação às métricas recebidas e é usada para levantar problemas ou incidentes que afetam o usuário.

Os eventos integrados acionam problemas ou incidentes com base em sinais de falha no estado de saúde das entidades, enquanto os eventos personalizados acionam problemas ou incidentes com base nos limites de uma métrica específica de qualquer entidade. Para obter informações sobre eventos integrados do sensor OracleDB, consulte a Referência de eventos integrados.