README.md 3.4 KB

Oracle DB receiver

Status
Stability alpha: metrics
Distributions contrib, splunk
Issues Open issues Closed issues
Code Owners @dmitryax, @crobert-1, @atoulme

This receiver collects metrics from an Oracle Database.

The receiver connects to a database host and performs periodically queries.

Getting Started

To use the OracleDB receiver you must define how to connect to your DB. This can be done in two ways, defined in the Primary and Secondary configuration option sections. Defining one of the two configurations is required. If both are defined, the primary option will be used.

Primary Configuration Option

Required options:

  • datasource: Oracle database connection string. Special characters must be encoded. Refer to Oracle Go Driver go_ora documentation for full connection string options.

Example:

receivers:
  oracledb:
    datasource: "oracle://otel:password@localhost:51521/XE"

Secondary Configuration Option

Required options:

  • endpoint: Endpoint used to connect to the OracleDB server. Must be in the format of host:port
  • password: Password for the OracleDB connection. Special characters are allowed.
  • service: OracleDB Service that the receiver should connect to.
  • username: Username for the OracleDB connection.

Example:

receivers:
  oracledb:
    endpoint: localhost:51521
    password: p@sswo%d
    service: XE
    username: otel

Permissions

Depending on which metrics you collect, you will need to assign those permissions to the database user:

GRANT SELECT ON V_$SESSION TO <username>;
GRANT SELECT ON V_$SYSSTAT TO <username>;
GRANT SELECT ON V_$RESOURCE_LIMIT TO <username>;
GRANT SELECT ON DBA_TABLESPACES TO <username>;
GRANT SELECT ON DBA_DATA_FILES TO <username>;

Enabling metrics.

See documentation.

You can enable or disable selective metrics.

Example:

receivers:
  oracledb:
    datasource: "oracle://otel:password@localhost:51521/XE"
    metrics:
      oracledb.query.cpu_time:
        enabled: false
      oracledb.query.physical_read_requests:
        enabled: true