OCI Autonomous Database
Introduction
OCI Autonomous Database is a fully managed, self-driving database service from Oracle Cloud that automates provisioning, tuning, backups, and scaling. It supports both transactional and analytical workloads with minimal administrative effort.
Getting Started
Compatibility
vuSmartMaps supports the monitoring of OCI Autonomous Database for availability, CPU and storage utilization, session trends, query performance, and connection reliability.
Data Collection Method
vuSmartMaps collects OCI Autonomous Database metrics using an internal data collector. This agent collects data based on the source configuration.
Prerequisites
Dependent Configuration
To configure this O11ySource, create a 'credential' of type 'oci' under the 'Definition' tab.
Inputs for Configuring Data Source
- Compartment ID: The unique identifier (OCID) of the compartment in which your Autonomous Database resources are located.
- Region: The OCI region where your resources are located.
- Credential: The tenancy, user, and PEM file required for authentication with OCI.
- Interval (in minutes): Time interval for polling data from the OCI Autonomous Database. Period should be between 5m – 60m.
- Rate Limit: The Maximum requests per second. Note that the global default OCI rate limit is 5 reqs/sec.
Firewall Requirement
To collect data from this O11ySource, ensure the following ports are opened:
| Source IP | Destination IP | Destination Port | Protocol | Direction | 
|---|---|---|---|---|
| vuSmartMaps IP | OCI Autonomous Database ListMetrics and SummarizeMetricsData API | 443* | TCP | Outbound | 
*Before providing the firewall requirements, please update the port based on the customer environment.
Configuring the Target
The User account provided in the configuration must have the minimum permissions listed below to collect metrics for all OCI Autonomous Database instances:
Allow group <group name> to inspect metrics in compartment <compartment name>
Allow group <group name> to read metrics in compartment <compartment name>
See also: Permissions Required for Each API Operation
Note: Because the configuration requires the Compartment ID & Region, a new endpoint or monitoring configuration will need to be created to monitor a new region or compartment for OCI Autonomous Database.
Refer to Oracle documentation for details on how to set up the monitoring endpoint access:
OCI API concepts API signing key handling Required Keys and OCIDs
Configuration Steps
- Before configuring OCI Autonomous Database O11ysource, you must create a 'credential' of type 'OCI' under 'Definition' tab:
- *Name: The name of the credentials.
- *Tenancy: The OCID of your OCI tenancy, which acts as the root container for all your OCI resources.
- *User: The OCID of the user that will be used for authentication in API requests.
- *Fingerprint: A unique identifier for the public key associated with the API signing key of the user.
- *Private Key File: RSA key pair in string format. You can use the following command to convert the PEM format file into a single line string.
awk 'NF {sub(/\r/, """"); printf ""%s\\n"",$0;}' <path to API Key>
- Enablethe O11ySource.
- Select the sources tab and press the +button to add a new instance that has to be monitored.
- Provide the required configurations:
- *Compartment ID
- *Region
- *Credential
- *Interval (in minutes)
- *Rate Limit (Change only if required)
- Click Saveto close the data source window.
Metrics Collected
| Name | Description | Data Type | 
|---|---|---|
| Timestamp | Time when the metric was collected. | DateTime64 | 
| Tenant ID | Unique identifier for the tenant in OCI. | String | 
| Business Unit ID | Identifier of the associated business unit. | String | 
| Resource ID | Unique identifier for the monitored resource. | String | 
| Database Name | Name of the Autonomous Database instance. | String | 
| Metric Name | Display name of the metric being measured. | String | 
| Region | OCI region where the resource is deployed. | String | 
| Compartment ID | OCI compartment containing the resource. | String | 
| Resource Type | Type/category of the resource. | String | 
| Host Name | Name of the host server. | String | 
| Instance Type | Type of database instance. | String | 
| CPU Utilization (%) | Average CPU usage percentage. | Float64 | 
| Storage Utilization (%) | Average storage utilization percentage. | Float64 | 
| Database Time (ms) | Average database execution time. | Float64 | 
| Wait Time (ms) | Average database wait time. | Float64 | 
| CPU Time (ms) | Average CPU time consumed by sessions. | Float64 | 
| Database Availability | Indicates database availability (0=down | Float64 | 
| Connection Latency (ms) | Maximum latency for database connections. | Float64 | 
| Query Latency (ms) | Maximum query execution latency. | Float64 | 
| Total Sessions | Total number of database sessions. | Float64 | 
| Running Statements | Average number of concurrently running SQL statements. | Float64 | 
| Queued Statements | Total queued SQL statements. | Float64 | 
| Current Logons | Maximum active logins to the database. | UInt32 | 
| User Calls | Total user call operations. | UInt32 | 
| Failed Logons | Average number of failed login attempts. | Float64 | 
| User Commits | Total number of commit operations. | UInt32 | 
| User Rollbacks | Total number of rollback operations. | UInt32 | 
| DB Block Changes | Total changes to database blocks. | UInt32 | 
| Physical Reads | Total number of physical read operations. | UInt32 | 
| Physical Writes | Total number of physical write operations. | UInt32 | 
| SQL*Net Bytes From Client | Total bytes received from client via SQL*Net. | UInt32 | 
| SQL*Net Bytes To Client | Total bytes sent to client via SQL*Net. | UInt32 | 
| APEX Page Events | Total number of APEX page events. | UInt32 | 
| APEX Page Load Time (ms) | Total APEX page load time. | UInt32 | 
| Peer Lag | Maximum replication lag between peer databases. | UInt32 | 
| Average Active Sessions | Average active sessions over the interval. | Float64 | 
| Blocking Sessions | Maximum number of blocking sessions. | UInt32 | 
| Execute Count | Total executed SQL statements. | UInt32 | 
| Hard Parse Count | Total hard parse operations. | UInt32 | 
| Logical Reads | Total logical read operations. | UInt32 | 
| Parse Count | Total SQL parse operations. | UInt32 | 
| Parse Failure Count | Total failed SQL parse operations. | UInt32 | 
| Physical Read Total Bytes | Total bytes read physically from disk. | UInt32 | 
| Physical Write Total Bytes | Total bytes written physically to disk. | UInt32 | 
| Redo Generated | Total redo log generated. | UInt32 | 
| Session Utilization (%) | Average session usage relative to capacity. | UInt32 | 
| SQL*Net Bytes From DB Link | Bytes received over database link. | UInt32 | 
| SQL*Net Bytes To DB Link | Bytes sent over database link. | UInt32 | 
| Transaction Count | Total number of database transactions. | UInt32 | 
| Storage Allocated (GB) | Maximum allocated storage in GB. | UInt32 | 
| Maximum Storage (GB) | Maximum possible storage for the instance. | UInt32 | 
| Storage Used (GB) | Maximum storage used. | UInt32 | 
| Logical Reads Count | Count of logical read operations. | UInt32 | 
| Connections Dropped by Client | Total connections dropped by client. | UInt32 | 
| Connections Dropped by Server | Total connections dropped by server. | UInt32 | 
| Failed Connections | Total failed connection attempts. | UInt32 | 
| Autonomous DB Type | Type of database | String | 
| Deployment Type | Type of database deployment | String | 
