• /
  • 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

Monitoreo de Oracle Database con NRDOT

|View as Markdown (English)

Avance

Todavía estamos trabajando en esta característica, ¡pero nos encantaría que la probaras!

Esta función se proporciona actualmente como parte de una vista previa de conformidad con nuestras políticas de prelanzamiento.

New Relic now empowers your team to monitor your Oracle Database performance using New Relic Distribution of OpenTelemetry (NRDOT) with New Relic database monitoring capabilities. This integration provides comprehensive insights into database metrics, query performance, and system health using the NRDOT collector.

Este enfoque basado en NRDOT complementa nuestra actual On-Host Integration (OHI) al aprovechar los estándares de OpenTelemetry para el monitoreo de bases de datos, lo que facilita la integración con su stack de observabilidad existente.

Requisitos previos

Antes de comenzar, cerciorar de tener lo siguiente:

Configurar el NRDOT Collector para el monitoreo de Oracle Database

You can set up Oracle Database monitoring using the NRDOT Collector in on-host (multitenant) or RDS environments. You can configure NRDOT Collector using the following methods:

  • Guided install: The guided install method provides step-by-step instructions on the New Relic platform to help you install and configure the NRDOT Collector for Oracle Database monitoring.

  • Manual install: The manual install method allows you to set up the NRDOT Collector on your own by following the instructions in this documentation. You can manually configure in following environments:

    • On-host (multitenant) environment: Install the NRDOT Collector on the same host as your Oracle Database instance to collect both infrastructure and database telemetry data.
    • RDS environment: Install the NRDOT Collector in an RDS environment to monitor your Oracle Database instances running in Amazon RDS.

Sugerencia

The NRDOT Collector collects both infrastructure and database related telemetry data, so you can have a unified observability solution for your Oracle Database environment in New Relic.

Para instalar el NRDOT Collector:

Instalar NRDOT Collector

  1. Inicie sesión en su cuenta de New Relic.

  2. Vaya a left navigation pane > + Integration & Agents > Oracle (OpenTelemetry).

  3. On the Select an account screen, select the account you want to install the Oracle Database integration on, and click Continue.

  4. En la pantalla Enter your credential, seleccione una de las siguientes opciones y luego haga clic en Continue:

    • Use una clave existente: si ya tiene una clave de licencia, proporcione la clave de licencia. Para obtener más información, consulta Claves de usuario.
    • Crear una nueva clave: si no tiene una clave de licencia, haga clic en Create a new key para crear una.
  5. On the Compatibility and requirements screen, ensure that all the requirements are met, and click Continue.

  6. On the Database user configuration screen, select your deployment type to install the integration.

  7. Follow the on-screen instructions to set up the integration for the selected environment.

  8. After installation, on the Test your integration screen, click Test connection to verify that the NRDOT Collector can connect to your Oracle Database instance and send data to New Relic. If the test's successful, you'll see a confirmation message.

(Opcional) Configurar la correlación de APM y base de datos

Para correlacionar el rendimiento de su aplicación con las operaciones de la base de datos, puede configurar la identificación del servicio de base de datos. Esta característica le permite ver exactamente qué aplicaciones están generando workloads de base de datos específicas. Para obtener más información, consulte configurar la identificación del servicio de base de datos para obtener la correlación entre APM y la base de datos en New Relic.

Importante

Para ver los datos de rendimiento de la base de datos en APM, ambas entidades deben estar en la misma cuenta de New Relic. Si las entidades están en diferentes cuentas de New Relic, debe tener acceso a ambas cuentas para ver los datos.

Encuentra y utiliza tus datos

Once your data is being collected, you can access comprehensive Oracle Database monitoring through New Relic UI.

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.

Puede configurar el monitoreo de Oracle Database mediante el NRDOT Collector en entornos on-host o multitenant. Para instalar el NRDOT Collector en entornos en el host (multitenant), siga estos pasos:

Note: All PDBs under this CDB will be monitored.

Método de instalación

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

Configurar el usuario de la base de datos

Create a monitoring user with necessary privileges for your multitenant Oracle Database. This requires creating a common user with the C## prefix.

  1. Before creating the database user or running any assignment grants, you must execute the following statement as a SYS user to set your current active container context to CDB$ROOT:

    ALTER SESSION SET CONTAINER = CDB$ROOT;
  2. For multitenant databases, log in to the root database as an administrator. Use CREATE USER to add a new user to the database. Specified username will be a 'common user' and needs to be prefixed with c## as recommended by Oracle.

    CREATE USER c##<YOUR_DB_USERNAME> IDENTIFIED BY "<USER_PASSWORD>" CONTAINER=ALL;
    GRANT CREATE SESSION TO c##<YOUR_DB_USERNAME> CONTAINER=ALL;
  3. Run the following statement as SYSDBA on the CDB root. This allows the monitoring user to see every PDB's rows in container-data views, which is required for per-PDB metrics and events.

    ALTER USER c##<YOUR_DB_USERNAME> SET CONTAINER_DATA=ALL CONTAINER=CURRENT;

    Sugerencia

    Ensure your USER_PASSWORD meets Oracle new user password requirements.

Otorgar privilegios de monitoreo para la base de datos multiinquilino

Run the following GRANT statements as SYSDBA on the CDB root. These cover instance detection, metrics collection, per-PDB monitoring, and events collection. You can execute them together as a single script or run each statement individually.

GRANT SELECT ON V_$INSTANCE TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$DATABASE TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$CONTAINERS TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$DATAFILE TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$SYSSTAT TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$CON_SYSSTAT TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$SYSMETRIC TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$CON_SYSMETRIC TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$SESSION TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$RESOURCE_LIMIT TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$OSSTAT TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$SGAINFO TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$ROWCACHE TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$PARAMETER TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON CDB_TABLESPACE_USAGE_METRICS TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON CDB_TABLESPACES TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON DBA_DATA_FILES TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON DBA_FREE_SPACE TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON DBA_RECYCLEBIN TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$SQL TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$SQL_PLAN_STATISTICS_ALL TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$LOCK TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$SESSION_EVENT TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON DBA_PROCEDURES TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON DBA_OBJECTS TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON V_$PDBS TO c##<USER_NAME> CONTAINER=ALL;
GRANT SELECT ON CDB_SERVICES TO c##<USER_NAME> CONTAINER=ALL;

Configurar el Colector NRDOT

  1. Create the configuration file. The filename must be oracle-config.yaml.

    bash
    $
    sudo nano /etc/nrdot-collector/oracle-config.yaml
  2. Agregue el siguiente contenido de configuración al archivo oracle-config.yaml que creó en el paso anterior.

  3. Update the NRDOT collector configuration to use your oracle-config.yaml file.

    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
  4. Establezca los siguientes parámetros obligatorios en el archivo de configuración:

    Parámetro

    Descripción

    <YOUR_DB_HOST>

    Ingrese el nombre de host de su base de datos Oracle.

    <YOUR_DB_PORT>

    Ingrese el puerto de su base de datos Oracle.

    <USERNAME>

    Ingrese su nombre de usuario de la base de datos.

    <PASSWORD>

    Ingrese la contraseña de su base de datos.

    <YOUR_SERVICE_NAME>

    Ingrese el nombre del servicio de Oracle.

    <YOUR_NEWRELIC_OTLP_ENDPOINT>

    Ingrese el endpoint OTLP de New Relic. Para obtener más información, consulta la documentación de los endpoints OTLP de New Relic.

    <YOUR_NEWRELIC_LICENSE_KEY>

    Ingrese su clave de API de New Relic.

  5. Under the Events section, enable these event types to collect their metrics:

    evento

    Descripción

    db.server.query_sample

    Per-session active query samples capturing current SQL, wait state, and blocking details.

    db.server.top_query

    Top N SQL statements by CPU or elapsed time, including execution stats and query plans.

    db.server.session.wait_sample

    Per-session cumulative wait counts and durations from

    v$session_event

    .

  6. Configure the collection settings for each event type:

    Configuration Section

    Parámetro

    Valor predeterminado

    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

    Sugerencia

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

(Optional) Set up SQL query receiver

You can configure SQL query receiver to collect custom metrics from your Oracle Database. For more information, refer to the SQL query receiver documentation.

Reiniciar el colector NRDOT

Después de actualizar su configuración, reinicie el colector NRDOT:

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

Sugerencia

Always restart the NRDOT Collector after making configuration changes so the new settings take effect.

(Opcional) Configuración de múltiples receptores

The nrdot-collector binary supports a multi-receiver configuration within a single oracle-config.yaml to monitor multiple Oracle Database instances using unique credentials.

Sugerencia

  • This configuration allows you to monitor multiple Oracle databases instances simultaneously. Each instance gets its own receiver configuration with unique credentials, while sharing common processors and exporters. Adjust the collection_interval and other parameters based on your monitoring requirements.

  • Reinicie el colector NRDOT después de actualizar la configuración para aplicar los cambios.

(Opcional) Configurar la correlación de APM y base de datos

Para correlacionar el rendimiento de su aplicación con las operaciones de la base de datos, puede configurar la identificación del servicio de base de datos. Esta característica le permite ver exactamente qué aplicaciones están generando workloads de base de datos específicas. Para obtener más información, consulte configurar la identificación del servicio de base de datos para obtener la correlación entre APM y la base de datos en New Relic.

Importante

Para ver los datos de rendimiento de la base de datos en APM, ambas entidades deben estar en la misma cuenta de New Relic. Si las entidades están en diferentes cuentas de New Relic, debe tener acceso a ambas cuentas para ver los datos.

(Opcional) Configurar la gestión de secretos

La característica de gestión de secretos le permite 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. Para obtener más información, consulte gestión de secretos.

Encuentra y utiliza tus datos

Once your data is being collected, you can access comprehensive Oracle Database monitoring through New Relic UI.

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.

To install the NRDOT Collector for PDB environments, follow these steps:

Método de instalación

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

Configurar el usuario de la base de datos

Create a monitoring user with the necessary privileges for your PDB Oracle Database instance.

  1. Run the following statement as SYS before creating the user or running any grants:
    ALTER SESSION SET CONTAINER = "<YOUR_PDB>";
  2. Run the following statements as SYS inside your target PDB to create a local monitoring user:
    CREATE USER <USER_NAME> IDENTIFIED BY "<YOUR_PASSWORD>";
    GRANT CREATE SESSION TO <USER_NAME>;

Otorgar privilegios de monitoreo para la base de datos multiinquilino

Run these commands as the SYS user inside your PDB. This gives the monitoring tool the basic access it needs to collect metrics, track events, and find your database instances.

GRANT SELECT ON V_$INSTANCE TO <USER_NAME>;
GRANT SELECT ON V_$DATABASE TO <USER_NAME>;
GRANT SELECT ON V_$CONTAINERS TO <USER_NAME>;
GRANT SELECT ON V_$DATAFILE TO <USER_NAME>;
GRANT SELECT ON V_$SYSSTAT TO <USER_NAME>;
GRANT SELECT ON V_$SYSMETRIC TO <USER_NAME>;
GRANT SELECT ON V_$SESSION TO <USER_NAME>;
GRANT SELECT ON V_$RESOURCE_LIMIT TO <USER_NAME>;
GRANT SELECT ON V_$OSSTAT TO <USER_NAME>;
GRANT SELECT ON V_$SGAINFO TO <USER_NAME>;
GRANT SELECT ON V_$ROWCACHE TO <USER_NAME>;
GRANT SELECT ON V_$PARAMETER TO <USER_NAME>;
GRANT SELECT ON DBA_TABLESPACE_USAGE_METRICS TO <USER_NAME>;
GRANT SELECT ON DBA_TABLESPACES TO <USER_NAME>;
GRANT SELECT ON DBA_DATA_FILES TO <USER_NAME>;
GRANT SELECT ON DBA_FREE_SPACE TO <USER_NAME>;
GRANT SELECT ON DBA_RECYCLEBIN TO <USER_NAME>;
GRANT SELECT ON V_$SQL TO <USER_NAME>;
GRANT SELECT ON V_$SQL_PLAN_STATISTICS_ALL TO <USER_NAME>;
GRANT SELECT ON V_$LOCK TO <USER_NAME>;
GRANT SELECT ON V_$SESSION_EVENT TO <USER_NAME>;
GRANT SELECT ON DBA_PROCEDURES TO <USER_NAME>;
GRANT SELECT ON DBA_OBJECTS TO <USER_NAME>;
GRANT SELECT ON V_$PDBS TO <USER_NAME>;
GRANT SELECT ON CDB_SERVICES TO <USER_NAME>;

Configurar el Colector NRDOT

Configure the NRDOT Collector with your PDB-specific settings.

  1. Create the configuration file. The filename must be oracle-config.yaml.

    bash
    $
    sudo nano /etc/nrdot-collector/oracle-config.yaml
  2. Agregue el siguiente contenido de configuración al archivo oracle-config.yaml que creó en el paso anterior.

  3. Update the NRDOT collector configuration to use your oracle-config.yaml file.

    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
  4. Establezca los siguientes parámetros obligatorios en el archivo de configuración:

    Parámetro

    Descripción

    <YOUR_DB_HOST>

    Ingrese el nombre de host de su base de datos Oracle.

    <YOUR_DB_PORT>

    Ingrese el puerto de su base de datos Oracle.

    <USERNAME>

    Ingrese su nombre de usuario de la base de datos.

    <PASSWORD>

    Ingrese la contraseña de su base de datos.

    <YOUR_SERVICE_NAME>

    Ingrese el nombre del servicio de Oracle.

    <YOUR_NEWRELIC_OTLP_ENDPOINT>

    Ingrese el endpoint OTLP de New Relic. Para obtener más información, consulta la documentación de los endpoints OTLP de New Relic.

    <YOUR_NEWRELIC_LICENSE_KEY>

    Ingrese su clave de API de New Relic.

  5. Under the Events section, enable these event types to collect their metrics:

    evento

    Descripción

    db.server.query_sample

    Per-session active query samples capturing current SQL, wait state, and blocking details.

    db.server.top_query

    Top N SQL statements by CPU or elapsed time, including execution stats and query plans.

    db.server.session.wait_sample

    Per-session cumulative wait counts and durations from

    v$session_event

    .

  6. Configure the collection settings for each event type:

    Configuration Section

    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

    Sugerencia

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

(Optional) Set up SQL query receiver

You can configure SQL query receiver to collect custom metrics from your Oracle Database. For more information, refer to the SQL query receiver documentation.

Reiniciar el colector NRDOT

Después de actualizar su configuración, reinicie el colector NRDOT:

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

Sugerencia

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

(Opcional) Configuración de múltiples receptores

The nrdot-collector binary supports a multi-receiver configuration within a single oracle-config.yaml to monitor multiple Oracle Database instances using unique credentials.

Sugerencia

  • This configuration allows you to monitor multiple Oracle databases instances simultaneously. Each instance gets its own receiver configuration with unique credentials, while sharing common processors and exporters. Adjust the collection_interval and other parameters based on your monitoring requirements.

  • Reinicie el colector NRDOT después de actualizar la configuración para aplicar los cambios.

(Opcional) Configurar la correlación de APM y base de datos

Para correlacionar el rendimiento de su aplicación con las operaciones de la base de datos, puede configurar la identificación del servicio de base de datos. Esta característica le permite ver exactamente qué aplicaciones están generando workloads de base de datos específicas. Para obtener más información, consulte configurar la identificación del servicio de base de datos para obtener la correlación entre APM y la base de datos en New Relic.

Importante

Para ver los datos de rendimiento de la base de datos en APM, ambas entidades deben estar en la misma cuenta de New Relic. Si las entidades están en diferentes cuentas de New Relic, debe tener acceso a ambas cuentas para ver los datos.

(Opcional) Configurar la gestión de secretos

La característica de gestión de secretos le permite 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. Para obtener más información, consulte gestión de secretos.

Encuentra y utiliza tus datos

Once your data is being collected, you can access comprehensive Oracle Database monitoring through New Relic UI.

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.

Para instalar el NRDOT Collector en entornos RDS, siga estos pasos:

Método de instalación

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 su base de datos Oracle RDS.

  1. Inicie sesión en la base de datos raíz como administrador:

    CREATE USER <USERNAME> IDENTIFIED BY "<USER_PASSWORD>";
  2. Otorgar privilegios de CONNECT al usuario recién creado:

    GRANT CONNECT TO <USERNAME>;

Otorgar privilegios de monitoreo para la base de datos RDS

Ejecute las siguientes sentencias SQL para otorgar privilegios de monitoreo. Reemplace <USERNAME_IN_UPPERCASE> por su nombre de usuario en mayúsculas:

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

Configurar el Colector NRDOT

  1. Create the configuration file. The filename must be oracle-config.yaml.

    bash
    $
    sudo nano /etc/nrdot-collector/oracle-config.yaml
  2. Agregue el siguiente contenido de configuración al archivo oracle-config.yaml que creó en el paso anterior.

  3. Establezca los siguientes parámetros obligatorios en el archivo de configuración:

    Parámetro

    Descripción

    <YOUR_DB_HOST>

    Ingrese el nombre de host de su base de datos Oracle.

    <YOUR_DB_PORT>

    Ingrese el puerto de su base de datos Oracle.

    <USERNAME>

    Ingrese su nombre de usuario de la base de datos.

    <PASSWORD>

    Ingrese la contraseña de su base de datos.

    <YOUR_SERVICE_NAME>

    Ingrese el nombre de su servicio PDB.

    <YOUR_NEWRELIC_OTLP_ENDPOINT>

    Ingrese el endpoint OTLP de New Relic. Para obtener más información, consulta la documentación de los endpoints OTLP de New Relic.

    <YOUR_NEWRELIC_LICENSE_KEY>

    Ingresa tu clave de licencia de New Relic.

  4. Under the Events section, enable these event types to collect their metrics:

    evento

    Descripción

    db.server.query_sample

    Per-session active query samples capturing current SQL, wait state, and blocking details.

    db.server.top_query

    Top N SQL statements by CPU or elapsed time, including execution stats and query plans.

    db.server.session.wait_sample

    Per-session cumulative wait counts and durations from

    v$session_event

    .

  5. Configure the collection settings for each event type:

    Configuration Section

    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

(Optional) Set up SQL query receiver

You can configure SQL query receiver to collect custom metrics from your Oracle Database. For more information, refer to the SQL query receiver documentation.

(Opcional) Configuración de múltiples receptores

The nrdot-collector binary supports a multi-receiver configuration within a single oracle-config.yaml to monitor multiple Oracle Database instances using unique credentials. The sample oracle-config.yaml below demonstrates how to set up multiple receivers for different RDS instances while sharing common processors and exporters.

Sugerencia

  • Esta configuración le permite monitorear múltiples instancias de Oracle RDS simultáneamente. Cada instancia obtiene su propia configuración de receptor con credenciales únicas, mientras comparte procesadores y exportadores comunes. Ajuste el collection_interval y otros parámetros según sus requisitos de monitoreo.

  • Reinicie el colector NRDOT después de actualizar la configuración para aplicar los cambios.

(Opcional) Configurar la correlación de APM y base de datos

Para correlacionar el rendimiento de su aplicación con las operaciones de la base de datos, puede configurar la identificación del servicio de base de datos. Esta característica le permite ver exactamente qué aplicaciones están generando workloads de base de datos específicas. Para obtener más información, consulte configurar la identificación del servicio de base de datos para obtener la correlación entre APM y la base de datos en New Relic.

Importante

Para ver los datos de rendimiento de la base de datos en APM, ambas entidades deben estar en la misma cuenta de New Relic. Si las entidades están en cuentas diferentes, debe tener acceso a ambas cuentas para ver los datos.

(Opcional) Configurar la gestión de secretos

La característica de gestión de secretos le permite 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. Para obtener más información, consulte gestión de secretos.

Encuentra y utiliza tus datos

Once your data is being collected, you can access comprehensive Oracle Database monitoring through New Relic UI.

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.

To install the NRDOT Collector for Oracle Autonomous Database (ADB) environments, follow these steps:

Método de instalación

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

Configurar el usuario de la base de datos

Create a monitoring user with the necessary privileges for your ADB Oracle Database instance. Run the following statements as SYS inside your target ADB to create a local monitoring user:

CREATE USER <USER_NAME> IDENTIFIED BY "<YOUR_PASSWORD>";
GRANT CREATE SESSION TO <USER_NAME>;

Grant monitoring privileges for Autonomous Database

Run these commands as an admin inside your ADB. This gives the monitoring tool the basic access it needs to collect metrics, track events, and find your database instances.

GRANT SELECT ON SYS.V_$INSTANCE TO <USER_NAME>;
GRANT SELECT ON SYS.V_$DATABASE TO <USER_NAME>;
GRANT SELECT ON SYS.V_$CONTAINERS TO <USER_NAME>;
GRANT SELECT ON SYS.V_$DATAFILE TO <USER_NAME>;
GRANT SELECT ON SYS.V_$PDBS TO <USER_NAME>;
GRANT SELECT ON SYS.V_$SYSSTAT TO <USER_NAME>;
GRANT SELECT ON SYS.V_$SYSMETRIC TO <USER_NAME>;
GRANT SELECT ON SYS.V_$SESSION TO <USER_NAME>;
GRANT SELECT ON SYS.V_$RESOURCE_LIMIT TO <USER_NAME>;
GRANT SELECT ON SYS.V_$OSSTAT TO <USER_NAME>;
GRANT SELECT ON SYS.V_$SGAINFO TO <USER_NAME>;
GRANT SELECT ON SYS.V_$ROWCACHE TO <USER_NAME>;
GRANT SELECT ON SYS.V_$PARAMETER TO <USER_NAME>;
GRANT SELECT ON SYS.DBA_TABLESPACE_USAGE_METRICS TO <USER_NAME>;
GRANT SELECT ON SYS.DBA_TABLESPACES TO <USER_NAME>;
GRANT SELECT ON SYS.DBA_DATA_FILES TO <USER_NAME>;
GRANT SELECT ON SYS.DBA_FREE_SPACE TO <USER_NAME>;
GRANT SELECT ON SYS.DBA_RECYCLEBIN TO <USER_NAME>;
GRANT SELECT ON SYS.V_$SQL TO <USER_NAME>;
GRANT SELECT ON SYS.V_$SQL_PLAN_STATISTICS_ALL TO <USER_NAME>;
GRANT SELECT ON SYS.V_$LOCK TO <USER_NAME>;
GRANT SELECT ON SYS.V_$SESSION_EVENT TO <USER_NAME>;
GRANT SELECT ON SYS.DBA_PROCEDURES TO <USER_NAME>;
GRANT SELECT ON SYS.DBA_OBJECTS TO <USER_NAME>;

Configurar el Colector NRDOT

Configure the NRDOT Collector with your ADB-specific settings. Create a configuration file (e.g., adb-config.yaml) with the following content:

receivers:
nroracledb/adb:
datasource: "oracle://<USERNAME>:<PASSWORD>@<YOUR_DB_HOST>:<YOUR_DB_PORT>/<YOUR_SERVICE_NAME>?ssl=true&ssl%20verify=true"
collection_interval: 10s
events:
db.server.query_sample:
enabled: true
db.server.top_query:
enabled: true
db.server.session.wait_sample:
enabled: true
top_query_collection:
max_query_sample_count: 1000
top_query_count: 200
collection_interval: 60s
allowed_comment_keys:
- nr_service_guid
query_sample_collection:
max_rows_per_query: 100
allowed_comment_keys:
- nr_service_guid
session_wait_event_collection:
max_rows_per_query: 100
metrics:
oracledb.cpu_time:
enabled: true
oracledb.executions:
enabled: true
oracledb.parse_calls:
enabled: true
oracledb.hard_parses:
enabled: true
oracledb.logical_reads:
enabled: true
oracledb.physical_reads:
enabled: true
oracledb.physical_reads_direct:
enabled: true
oracledb.physical_writes:
enabled: true
oracledb.physical_writes_direct:
enabled: true
oracledb.physical_read_io_requests:
enabled: true
oracledb.physical_write_io_requests:
enabled: true
oracledb.physical_io.cache_writes:
enabled: true
oracledb.physical_io.requests:
enabled: true
attributes:
- disk.io.direction
- disk.io.block_size
oracledb.physical_io.transferred:
enabled: true
attributes:
- disk.io.direction
- disk.io.type
oracledb.sqlnet.io.transferred:
enabled: true
attributes:
- network.io.direction
- destination.type
oracledb.consistent_gets:
enabled: true
oracledb.db_block_gets:
enabled: true
oracledb.data_dictionary.hit_ratio:
enabled: true
oracledb.pga_memory:
enabled: true
oracledb.enqueue_deadlocks:
enabled: true
oracledb.exchange_deadlocks:
enabled: true
oracledb.sessions.usage:
enabled: true
attributes:
- session_type
- session_status
oracledb.logons:
enabled: true
oracledb.user_commits:
enabled: true
oracledb.user_rollbacks:
enabled: true
oracledb.tablespace_size.limit:
enabled: true
attributes:
- tablespace_name
oracledb.tablespace_size.usage:
enabled: true
attributes:
- tablespace_name
oracledb.storage.usage:
enabled: true
oracledb.storage.utilization:
enabled: true
oracledb.recycle_bin.limit:
enabled: true
oracledb.queries_parallelized:
enabled: true
oracledb.ddl_statements_parallelized:
enabled: true
oracledb.dml_statements_parallelized:
enabled: true
oracledb.parallel_operations_not_downgraded:
enabled: true
oracledb.parallel_operations_downgraded_1_to_25_pct:
enabled: true
oracledb.parallel_operations_downgraded_25_to_50_pct:
enabled: true
oracledb.parallel_operations_downgraded_50_to_75_pct:
enabled: true
oracledb.parallel_operations_downgraded_75_to_99_pct:
enabled: true
oracledb.parallel_operations_downgraded_to_serial:
enabled: true
processors:
batch:
resource/add_event_name:
attributes:
- key: host.address
value: "<YOUR_DB_HOST>"
action: upsert
exporters:
otlphttp/newrelic:
endpoint: "<YOUR_NEWRELIC_OTLP_ENDPOINT>"
headers:
api-key: "<YOUR_NEWRELIC_LICENSE_KEY>"
compression: gzip
retry_on_failure:
enabled: true
initial_interval: 5s
max_interval: 30s
max_elapsed_time: 300s
service:
telemetry:
metrics:
level: none
pipelines:
metrics/oracledb:
receivers: [nroracledb/adb]
processors: [resource/add_event_name, batch]
exporters: [otlphttp/newrelic]
logs/oracledb:
receivers: [nroracledb/adb]
processors: [resource/add_event_name, batch]
exporters: [otlphttp/newrelic]

Importante

Note: The following metrics are not supported in ADB:

  • oracledb.database.cpu.utilization
  • oracledb.database.wait.utilization
  • oracledb.host.cpu.utilization
  • oracledb.execution.utilization
  • oracledb.parse.rate
  • oracledb.parse.utilization
  • oracledb.sort.ratio
  • oracledb.sql_service.response.duration
  • oracledb.buffer_cache.utilization
  • oracledb.library_cache.utilization
  • oracledb.shared_pool.utilization
  • oracledb.redo_allocation.utilization
  • oracledb.processes.limit
  • oracledb.processes.usage
  • oracledb.sessions.limit
  • oracledb.transactions.limit
  • oracledb.transactions.usage
  • oracledb.dml_locks.limit
  • oracledb.dml_locks.usage
  • oracledb.enqueue_locks.limit
  • oracledb.enqueue_locks.usage
  • oracledb.enqueue_resources.limit
  • oracledb.enqueue_resources.usage

(Optional) Set up SQL query receiver

You can configure SQL Query Receiver to collect custom metrics from your Oracle Database. For more information, refer to the SQL Query Receiver documentation.

Reiniciar el colector NRDOT

After configuring the collector, restart the NRDOT collector service to apply the changes:

bash
$
sudo systemctl restart nrdot-collector

Para verificar que el recolector se esté ejecutando correctamente, verifique el estado del servicio:

bash
$
sudo systemctl status nrdot-collector

Sugerencia

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

(Opcional) Configuración de múltiples receptores

If you want to monitor multiple Oracle ADB instances from the same collector, you can configure multiple receivers in your configuration file by adding additional receiver blocks with different names and connection details.

(Opcional) Configurar la correlación de APM y base de datos

Para correlacionar el rendimiento de su aplicación con las operaciones de la base de datos, puede configurar la identificación del servicio de base de datos. Esta característica le permite ver exactamente qué aplicaciones están generando workloads de base de datos específicas. Para obtener más información, consulte configurar la identificación del servicio de base de datos para obtener la correlación entre APM y la base de datos en New Relic.

Importante

Para ver los datos de rendimiento de la base de datos en APM, ambas entidades deben estar en la misma cuenta de New Relic. Si las entidades están en diferentes cuentas de New Relic, debe tener acceso a ambas cuentas para ver los datos.

(Opcional) Configurar la gestión de secretos

You can configure the NRDOT Collector to retrieve sensitive information, such as passwords, from secret management systems instead of storing them in plain text in configuration files. For more information, refer to secret management.

Encuentra y utiliza tus datos

After you set up the Oracle ADB integration, you can start monitoring and analyzing your database performance in New Relic:

  1. Go to one.newrelic.com > All Entities.

  2. Filter by Oracle to find your database entities.

  3. Select your Oracle ADB entity to view dashboards, metrics, and logs.

    For more information about monitoring Oracle databases, refer to our database monitoring documentation.

Comandos admitidos del colector NRDOT

Esta sección proporciona una lista de comandos comunes para administrar el servicio NRDOT Collector en su sistema.

Métricas disponibles

The following metrics are available for Oracle Database monitoring with NRDOT. Enable the relevant scrapers in your configuration to collect them.

Resolución de problemas

Si encuentra problemas durante la configuración, utilice esta guía de solución de problemas para diagnosticar y resolver los problemas comunes.

Que sigue

Después de configurar el monitoreo de la base de datos Oracle con NRDOT:

Copyright © 2026 New Relic Inc.

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