• /
  • EnglishEspañolFrançais日本語한국어Português
  • Inicia sesiónComenzar ahora

Te ofrecemos esta traducción automática para facilitar la lectura.

En caso de que haya discrepancias entre la versión en inglés y la versión traducida, se entiende que prevalece la versión en inglés. Visita esta página para obtener más información.

Crea una propuesta

Instalar y configurar NRDOT para el monitoreo de Oracle con PDB autohospedada

|View as Markdown (English)

Obtenga información valiosa y completa sobre el rendimiento de la base de datos conectable (PDB) de Oracle con el monitoreo de la base de datos, el análisis de consultas y las métricas de estado del sistema mediante el recolector New Relic Distribution of OpenTelemetry (NRDOT).

Sugerencia

Si necesita monitorear toda la base de datos de contenedor en lugar de una base de datos conectable individual, consulte la instrumentación de CDB.

Requisitos previos

Antes de comenzar, cerciorar de tener lo siguiente:

Instalar NRDOT Collector

Seleccione el método de distribución de instalación adecuado para su entorno Linux:

Configurar el usuario de la base de datos

Cree un usuario de monitoreo con los privilegios necesarios para la instancia de Oracle Database PDB.

  1. Ejecute la siguiente declaración como SYS antes de crear el usuario o ejecutar cualquier concesión:
    ALTER SESSION SET CONTAINER = "<YOUR_PDB>";
  2. Ejecute las siguientes sentencias como SYS dentro de su PDB objetivo para crear un usuario de monitoreo local:
    CREATE USER <YOUR_DB_USERNAME> IDENTIFIED BY "<YOUR_DB_PASSWORD>";
    GRANT CREATE SESSION TO <YOUR_DB_USERNAME>;

Otorgar privilegios de monitoreo para la PDB

Ejecute estos comandos como el usuario SYS dentro de su PDB. Esto le da a la herramienta de monitoreo el acceso básico que necesita para recopilar métricas, rastrear eventos y encontrar sus instancias de base de datos.

GRANT SELECT ON V_$INSTANCE TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$DATABASE TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$CONTAINERS TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$DATAFILE TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$SYSSTAT TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$SYSMETRIC TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$SESSION TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$RESOURCE_LIMIT TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$OSSTAT TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$SGAINFO TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$ROWCACHE TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$PARAMETER TO <YOUR_DB_USERNAME>;
GRANT SELECT ON DBA_TABLESPACE_USAGE_METRICS TO <YOUR_DB_USERNAME>;
GRANT SELECT ON DBA_TABLESPACES TO <YOUR_DB_USERNAME>;
GRANT SELECT ON DBA_DATA_FILES TO <YOUR_DB_USERNAME>;
GRANT SELECT ON DBA_FREE_SPACE TO <YOUR_DB_USERNAME>;
GRANT SELECT ON DBA_RECYCLEBIN TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$SQL TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$SQL_PLAN_STATISTICS_ALL TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$LOCK TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$SESSION_EVENT TO <YOUR_DB_USERNAME>;
GRANT SELECT ON DBA_PROCEDURES TO <YOUR_DB_USERNAME>;
GRANT SELECT ON DBA_OBJECTS TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$PDBS TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$PROCESS TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$TRANSACTION TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$CON_SYSSTAT TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$CON_SYSMETRIC TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$ASM_DISKGROUP_STAT TO <YOUR_DB_USERNAME>;
GRANT SELECT ON V_$ASM_DISK_STAT TO <YOUR_DB_USERNAME>;

Sugerencia

Los permisos V_$ASM_DISKGROUP_STAT y V_$ASM_DISK_STAT solo son necesarios si desea recopilar métricas de disco y grupo de discos de ASM.

Configurar el Colector NRDOT

Configure el Collector NRDOT con su configuración específica de PDB.

  1. Cree el archivo de configuración. El nombre del archivo debe ser oracle-config.yaml.
bash
$
sudo nano /etc/nrdot-collector/oracle-config.yaml
  1. Agregue el siguiente contenido de configuración al archivo oracle-config.yaml que creó en el paso anterior:

configuración completa

Esta configuración captura métricas esenciales de línea de base. Para ver el catálogo completo de métricas, consulte la referencia de configuración.

oracle-config.yaml
1
receivers:
2
nroracledb:
3
endpoint: oracle.example.com:1521
4
username: newrelic
5
password: YOUR_PASSWORD
6
service: YOUR_PDB_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]
197
exporters: [otlp/newrelic]
198
logs/oracledb:
199
receivers: [nroracledb]
200
exporters: [otlp/newrelic]
  1. En la sección de eventos, habilite estos tipos de eventos para recopilar sus métricas:

evento

Descripción

db.server.query_sample

Muestras de consultas activas por sesión que capturan el SQL actual, el estado de espera y los detalles de bloqueo.

db.server.top_query

Las N principales sentencias SQL por CPU o tiempo transcurrido, incluidas las estadísticas de ejecución y los planes de consulta.

db.server.session.wait_sample

Recuentos y duraciones de espera acumulados por sesión de v$session_event.

db.server.top_procedure

Los N principales procedimientos almacenados clasificados por uso de recursos, incluidas las estadísticas de ejecución.

db.server.query_plan

Detalles del plan de ejecución para las consultas principales y muestreadas.

  1. Configure los ajustes de recopilación para cada tipo de evento:

Sección de configuración

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

Sugerencia

Para obtener información más detallada sobre la configuración del extremo OTLP de New Relic y las mejores prácticas de OpenTelemetry, consulte la documentación de OTLP de OpenTelemetry.

Actualizar la configuración de NRDOT Collector

Actualice la configuración del NRDOT Collector para utilizar el archivo 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

Sugerencia

Tú también puedes:

  • Configurar múltiples receptores: para monitorear múltiples instancias de base de datos Oracle desde un recolector.
  • Configurar el receptor de consultas SQL: para recopilar métricas personalizadas de la base de datos Oracle.
  • Vincule su Oracle Database con APM: para correlacionar el rendimiento de la aplicación con las operaciones de la base de datos. Esto le permite ver exactamente qué aplicaciones están generando cargas de trabajo de base de datos específicas.
  • Configurar la gestión de secretos: para administrar de forma segura información confidencial, como las credenciales de bases de datos. Esto ayuda a mejorar la seguridad de su configuración de monitoreo al evitar la codificación rígida de datos sensibles en los archivos de configuración.

Reiniciar NRDOT Collector

Después de actualizar la configuración, reinicie el NRDOT Collector:

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

Sugerencia

Reinicie siempre el NRDOT Collector después de realizar cambios de configuración para garantizar que los nuevos ajustes surtan efecto.

Encuentra y utiliza tus datos

Una vez que se estén recopilando sus datos, puede acceder a un monitoreo integral de Oracle Database a través de la UI de New Relic.

Para encontrar su entidad de base de datos Oracle en New Relic:

  1. Vaya a https://one.newrelic.com > All Capabilities > Databases.
  2. Establezca los criterios de búsqueda como instrumentation.provider = opentelemetry.
  3. Seleccione su base de datos Oracle de la lista de entidades.

Resolución de problemas

Aprenda a solucionar problemas de la configuración de monitoreo de Oracle PDB en New Relic.

Referencia de métricas

Obtenga información sobre las métricas disponibles recopiladas por NRDOT Collector.

Instrumentación de RDS

Aprenda a configurar su Oracle Database para el monitoreo de RDS en New Relic.

Instalación de Docker

Aprenda a ejecutar el NRDOT Collector como un contenedor hermano de una instancia de base de datos de Oracle que ya se ejecuta en Docker.

Copyright © 2026 New Relic Inc.

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