• /
  • EnglishEspañolFrançais日本語한국어Português
  • EntrarComeçar agora

Esta tradução de máquina é fornecida para sua comodidade.

Caso haja alguma divergência entre a versão em inglês e a traduzida, a versão em inglês prevalece. Acesse esta página para mais informações.

Criar um problema

Instalar e configurar o NRDOT para monitoramento do Oracle com AWS RDS

|View as Markdown (English)

Obtenha insights abrangentes sobre o desempenho do seu banco de dados Amazon RDS Oracle com monitoramento de banco de dados, análise de consulta e métricas de integridade do sistema usando o coletor New Relic Distribution of OpenTelemetry (NRDOT).

Pré-requisitos

Antes de começar, certifique-se de ter o seguinte:

Instalar o NRDOT Collector

Selecione o método de distribuição de instalação adequado para o seu ambiente Linux:

Configurar usuário do banco de dados

Crie um usuário de monitoramento com os privilégios necessários para o seu banco de dados RDS Oracle.

  1. Faça login no banco de dados raiz como administrador:

    CREATE USER <YOUR_DB_USERNAME> IDENTIFIED BY "<YOUR_DB_PASSWORD>";
  2. Conceda privilégios CONNECT ao usuário recém-criado:

    GRANT CONNECT TO <YOUR_DB_USERNAME>;

Conceder privilégios de monitoramento para o banco de dados RDS

Execute as seguintes instruções SQL para conceder privilégios de monitoramento. Substitua <YOUR_DB_USERNAME_UPPERCASE> pelo seu nome de usuário em letras maiúsculas:

EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$SYSMETRIC', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$CON_SYSMETRIC', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$CONTAINERS', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$SESSION', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$SESSION_EVENT', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$SYSSTAT', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$CON_SYSSTAT', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$OSSTAT', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$SGAINFO', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$SQL', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$SQL_PLAN_STATISTICS_ALL', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$PROCESS', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$TRANSACTION', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$PARAMETER', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$ROWCACHE', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$RESOURCE_LIMIT', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$LOCK', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$DATABASE', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$INSTANCE', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$DATAFILE', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('V_$PDBS', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('DBA_DATA_FILES', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('DBA_FREE_SPACE', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('DBA_RECYCLEBIN', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('DBA_TABLESPACES', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('DBA_TABLESPACE_USAGE_METRICS', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('DBA_PROCEDURES', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('DBA_OBJECTS', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('CDB_TABLESPACE_USAGE_METRICS', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('CDB_TABLESPACES', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
EXEC rdsadmin.rdsadmin_util.grant_sys_object('CDB_SERVICES', '<YOUR_DB_USERNAME_UPPERCASE>', 'SELECT', false);
GRANT CREATE SESSION TO <YOUR_DB_USERNAME_UPPERCASE>;

Configurar o NRDOT Collector

Configure o NRDOT Collector com suas configurações específicas do RDS.

  1. Crie o arquivo de configuração. O nome do arquivo deve ser oracle-config.yaml.

    bash
    $
    sudo nano /etc/nrdot-collector/oracle-config.yaml
  2. Adicione o conteúdo de configuração abaixo ao arquivo oracle-config.yaml que você criou na etapa anterior.

    configuração completa

    Esta configuração captura métricas essenciais de baseline. Para ver o catálogo completo de métricas, consulte a referência de configuração.

    oracle-config.yaml
    1
    receivers:
    2
    nroracledb/rds:
    3
    endpoint: mydb-instance.xxxxxxxxxxxx.us-east-1.rds.amazonaws.com:1521
    4
    username: newrelic
    5
    password: YOUR_PASSWORD
    6
    service: YOUR_SERVICE_NAME
    7
    collection_interval: 15s
    8
    events:
    9
    db.server.query_sample:
    10
    enabled: true
    11
    db.server.top_query:
    12
    enabled: true
    13
    db.server.session.wait_sample:
    14
    enabled: true
    15
    db.server.top_procedure:
    16
    enabled: true
    17
    db.server.query_plan:
    18
    enabled: true
    19
    20
    top_query_collection:
    21
    max_query_sample_count: 1000
    22
    top_query_count: 200
    23
    collection_interval: 60s
    24
    allowed_comment_keys:
    25
    - nr_service_guid
    26
    27
    query_sample_collection:
    28
    max_rows_per_query: 100
    29
    allowed_comment_keys:
    30
    - nr_service_guid
    31
    32
    session_wait_event_collection:
    33
    max_rows_per_query: 100
    34
    35
    top_procedure_collection:
    36
    max_procedure_sample_count: 1000
    37
    top_procedure_count: 250
    38
    collection_interval: 60s
    39
    40
    # Metrics configuration - This baseline configuration captures essential metrics. To enable advanced monitoring and extended telemetry, refer to the full configuration documentation
    41
    metrics:
    42
    oracledb.buffer_cache.utilization:
    43
    enabled: true
    44
    attributes:
    45
    - oracle.db.pdb
    46
    oracledb.consistent_gets:
    47
    enabled: true
    48
    attributes:
    49
    - oracle.db.pdb
    50
    oracledb.cpu_time:
    51
    enabled: true
    52
    attributes:
    53
    - oracle.db.pdb
    54
    oracledb.database.cpu.utilization:
    55
    enabled: true
    56
    attributes:
    57
    - oracle.db.pdb
    58
    oracledb.database.wait.utilization:
    59
    enabled: true
    60
    attributes:
    61
    - oracle.db.pdb
    62
    oracledb.db_block_gets:
    63
    enabled: true
    64
    attributes:
    65
    - oracle.db.pdb
    66
    oracledb.enqueue_deadlocks:
    67
    enabled: true
    68
    attributes:
    69
    - oracle.db.pdb
    70
    oracledb.execution.utilization:
    71
    enabled: true
    72
    attributes:
    73
    - oracledb.parse.type
    74
    - oracle.db.pdb
    75
    oracledb.executions:
    76
    enabled: true
    77
    attributes:
    78
    - oracle.db.pdb
    79
    oracledb.hard_parses:
    80
    enabled: true
    81
    attributes:
    82
    - oracle.db.pdb
    83
    oracledb.host.cpu.utilization:
    84
    enabled: true
    85
    attributes:
    86
    - oracle.db.pdb
    87
    oracledb.library_cache.utilization:
    88
    enabled: true
    89
    attributes:
    90
    - oracle.db.pdb
    91
    oracledb.logical_reads:
    92
    enabled: true
    93
    attributes:
    94
    - oracle.db.pdb
    95
    oracledb.logons:
    96
    enabled: true
    97
    attributes:
    98
    - oracle.db.pdb
    99
    oracledb.parse.rate:
    100
    enabled: true
    101
    attributes:
    102
    - oracledb.parse.result
    103
    - oracle.db.pdb
    104
    oracledb.parse_calls:
    105
    enabled: true
    106
    attributes:
    107
    - oracle.db.pdb
    108
    oracledb.pga_memory:
    109
    enabled: true
    110
    attributes:
    111
    - oracle.db.pdb
    112
    oracledb.physical_io.requests:
    113
    enabled: true
    114
    attributes:
    115
    - disk.io.direction
    116
    - disk.io.block_size
    117
    - oracle.db.pdb
    118
    oracledb.physical_reads:
    119
    enabled: true
    120
    attributes:
    121
    - oracle.db.pdb
    122
    oracledb.physical_writes:
    123
    enabled: true
    124
    attributes:
    125
    - oracle.db.pdb
    126
    oracledb.processes.usage:
    127
    enabled: true
    128
    oracledb.sessions.usage:
    129
    enabled: true
    130
    attributes:
    131
    - session_type
    132
    - session_status
    133
    - oracle.db.pdb
    134
    oracledb.sga.usage:
    135
    enabled: true
    136
    attributes:
    137
    - oracledb.sga.component.name
    138
    oracledb.shared_pool.utilization:
    139
    enabled: true
    140
    attributes:
    141
    - oracle.db.pdb
    142
    oracledb.sql_service.response.duration:
    143
    enabled: true
    144
    attributes:
    145
    - oracle.db.pdb
    146
    oracledb.sqlnet.io.transferred:
    147
    enabled: true
    148
    attributes:
    149
    - network.io.direction
    150
    - destination.type
    151
    - oracle.db.pdb
    152
    oracledb.tablespace_size.usage:
    153
    enabled: true
    154
    attributes:
    155
    - tablespace_name
    156
    - oracle.db.pdb
    157
    oracledb.transactions.usage:
    158
    enabled: true
    159
    oracledb.user_commits:
    160
    enabled: true
    161
    attributes:
    162
    - oracle.db.pdb
    163
    oracledb.user_rollbacks:
    164
    enabled: true
    165
    attributes:
    166
    - oracle.db.pdb
    167
    168
    # Resource attributes attached to all metrics/logs (all enabled by default)
    169
    resource_attributes:
    170
    oracle.db.edition:
    171
    enabled: true
    172
    exporters:
    173
    otlp/newrelic:
    174
    endpoint: https://otlp.nr-data.net:4318
    175
    headers:
    176
    api-key: YOUR_LICENSE_KEY
    177
    compression: gzip
    178
    retry_on_failure:
    179
    enabled: true
    180
    initial_interval: 5s
    181
    max_interval: 30s
    182
    max_elapsed_time: 300s
    183
    sending_queue:
    184
    enabled: true
    185
    sizer: bytes
    186
    queue_size: 100_000_000
    187
    num_consumers: 10
    188
    batch:
    189
    sizer: bytes
    190
    max_size: 1_000_000
    191
    min_size: 0
    192
    flush_timeout: 5s
    193
    service:
    194
    pipelines:
    195
    metrics/oracledb:
    196
    receivers: [nroracledb/rds]
    197
    exporters: [otlp/newrelic]
    198
    logs/oracledb:
    199
    receivers: [nroracledb/rds]
    200
    exporters: [otlp/newrelic]
  3. Na seção Eventos, ative estes tipos de evento para coletar suas métricas:

    Evento

    Descrição

    db.server.query_sample

    Amostras de consultas ativas por sessão capturando o SQL atual, estado de espera e detalhes de bloqueio.

    db.server.top_query

    As N principais instruções SQL por CPU ou tempo decorrido, incluindo estatísticas de execução e planos de consulta.

    db.server.session.wait_sample

    Contagens e durações de espera cumulativas por sessão de

    v$session_event

    .

    db.server.top_procedure

    Top N stored procedures classificados por uso de recursos, incluindo estatísticas de execução.

    db.server.query_plan

    Detalhes do plano de execução para as consultas principais e amostradas.

  4. Configure as configurações de coleta para cada tipo de evento:

    Seção de configuração

    Parâmetro

    Valor

    top_query_collection

    max_query_sample_count

    1000

    top_query_collection

    top_query_count

    200

    top_query_collection

    collection_interval

    60s

    query_sample_collection

    max_rows_per_query

    100

    session_wait_event_collection

    max_rows_per_query

    100

    top_procedure_collection

    max_procedure_sample_count

    1000

    top_procedure_collection

    top_procedure_count

    250

    top_procedure_collection

    collection_interval

    60s

Atualize a configuração do NRDOT Collector

Atualize a configuração do NRDOT Collector para usar seu arquivo oracle-config.yaml.

bash
$
sudo sed -i 's|OTELCOL_OPTIONS="--config=/etc/nrdot-collector/config.yaml"|OTELCOL_OPTIONS="--config=/etc/nrdot-collector/oracle-config.yaml"|' /etc/nrdot-collector/nrdot-collector.conf

Dica

Você também pode:

  • Configurar múltiplos receptores: para monitorar várias instâncias de banco de dados Oracle a partir de um coletor.
  • Configure o SQL Query Receiver: para coletar métricas personalizadas do seu banco de dados Oracle.
  • Vincule seu banco de dados Oracle ao APM: para correlacionar o desempenho do aplicativo com as operações de banco de dados. Isso permite visualizar exatamente quais aplicativos estão gerando workloads específicas de banco de dados.
  • Configurar o gerenciamento de segredos: para gerenciar com segurança informações confidenciais, como credenciais de banco de dados. Isso ajuda a aprimorar a segurança do seu ambiente de monitoramento ao evitar a inserção direta de dados sensíveis nos arquivos de configuração.

Reiniciar o NRDOT Collector

Após atualizar a configuração, reinicie o NRDOT Collector:

bash
$
sudo systemctl restart nrdot-collector.service
$
sudo systemctl status nrdot-collector.service

Dica

Sempre reinicie o Collector NRDOT após fazer alterações de configuração para garantir que as novas configurações entrem em vigor.

Encontre e use seus dados

Assim que seus dados estiverem sendo coletados, você poderá acessar o monitoramento abrangente do banco de dados Oracle por meio da interface do New Relic.

Para encontrar sua entidade de banco de dados Oracle no New Relic:

  1. Vá para https://one.newrelic.com > All Capabilities > Databases.
  2. Defina os critérios de pesquisa como instrumentation.provider = opentelemetry.
  3. Selecione seu banco de dados Oracle na lista de entidades.

Resolução de problemas

Saiba como solucionar problemas da sua configuração de monitoramento do Oracle RDS no New Relic.

Referência de métricas

Saiba mais sobre as métricas disponíveis coletadas pelo NRDOT Collector.

Instrumentação de CDB

Saiba como configurar seu banco de dados Oracle para o monitoramento de CDB no New Relic.

Copyright © 2026 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.