oracle.oci.oci_opsi_database_insights – Manage a DatabaseInsights resource in Oracle Cloud Infrastructure

Note

This plugin is part of the oracle.oci collection (version 4.13.0).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install oracle.oci.

To use it in a playbook, specify: oracle.oci.oci_opsi_database_insights.

New in version 2.9.0: of oracle.oci

Synopsis

  • This module allows the user to create, update and delete a DatabaseInsights resource in Oracle Cloud Infrastructure

  • For state=present, create a Database Insight resource for a database in Operations Insights. The database will be enabled in Operations Insights. Database metric collection and analysis will be started.

  • This resource has the following action operations in the oracle.oci.oci_opsi_database_insights_actions module: change, change_pe_comanaged, disable, enable, ingest_database_configuration, ingest_sql_bucket, ingest_sql_plan_lines, ingest_sql_stats, ingest_sql_text.

Requirements

The below requirements are needed on the host that executes this module.

Parameters

Parameter Choices/Defaults Comments
api_user
string
The OCID of the user, on whose behalf, OCI APIs are invoked. If not set, then the value of the OCI_USER_ID environment variable, if any, is used. This option is required if the user is not specified through a configuration file (See config_file_location). To get the user's OCID, please refer https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm.
api_user_fingerprint
string
Fingerprint for the key pair being used. If not set, then the value of the OCI_USER_FINGERPRINT environment variable, if any, is used. This option is required if the key fingerprint is not specified through a configuration file (See config_file_location). To get the key pair's fingerprint value please refer https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm.
api_user_key_file
string
Full path and filename of the private key (in PEM format). If not set, then the value of the OCI_USER_KEY_FILE variable, if any, is used. This option is required if the private key is not specified through a configuration file (See config_file_location). If the key is encrypted with a pass-phrase, the api_user_key_pass_phrase option must also be provided.
api_user_key_pass_phrase
string
Passphrase used by the key referenced in api_user_key_file, if it is encrypted. If not set, then the value of the OCI_USER_KEY_PASS_PHRASE variable, if any, is used. This option is required if the key passphrase is not specified through a configuration file (See config_file_location).
auth_purpose
string
    Choices:
  • service_principal
The auth purpose which can be used in conjunction with 'auth_type=instance_principal'. The default auth_purpose for instance_principal is None.
auth_type
string
    Choices:
  • api_key ←
  • instance_principal
  • instance_obo_user
  • resource_principal
The type of authentication to use for making API requests. By default auth_type="api_key" based authentication is performed and the API key (see api_user_key_file) in your config file will be used. If this 'auth_type' module option is not specified, the value of the OCI_ANSIBLE_AUTH_TYPE, if any, is used. Use auth_type="instance_principal" to use instance principal based authentication when running ansible playbooks within an OCI compute instance.
cert_bundle
string
The full path to a CA certificate bundle to be used for SSL verification. This will override the default CA certificate bundle. If not set, then the value of the OCI_ANSIBLE_CERT_BUNDLE variable, if any, is used.
compartment_id
string
Compartment Identifier of database
Required for create using state=present.
Required when entity_source is one of ['EM_MANAGED_EXTERNAL_DATABASE', 'PE_COMANAGED_DATABASE']
config_file_location
string
Path to configuration file. If not set then the value of the OCI_CONFIG_FILE environment variable, if any, is used. Otherwise, defaults to ~/.oci/config.
config_profile_name
string
The profile to load from the config file referenced by config_file_location. If not set, then the value of the OCI_CONFIG_PROFILE environment variable, if any, is used. Otherwise, defaults to the "DEFAULT" profile in config_file_location.
credential_details
dictionary
Required when entity_source is 'PE_COMANAGED_DATABASE'
credential_source_name
string / required
Credential source name that had been added in Management Agent wallet. This is supplied in the External Database Service.
credential_type
string / required
    Choices:
  • CREDENTIALS_BY_SOURCE
  • CREDENTIALS_BY_VAULT
Credential type.
password_secret_id
string
The secret OCID mapping to the database credentials.
Applicable when credential_type is 'CREDENTIALS_BY_VAULT'
role
string
    Choices:
  • NORMAL
database user role.
Applicable when credential_type is 'CREDENTIALS_BY_VAULT'
user_name
string
database user name.
Applicable when credential_type is 'CREDENTIALS_BY_VAULT'
database_id
string
The OCID of the database.
Required when entity_source is 'PE_COMANAGED_DATABASE'
database_insight_id
string
Unique database insight identifier
Required for update using state=present.
Required for delete using state=absent.

aliases: id
database_resource_type
string
OCI database resource type
Required when entity_source is 'PE_COMANAGED_DATABASE'
dbm_private_endpoint_id
string
The OCID of the Database Management private endpoint
Applicable when entity_source is 'PE_COMANAGED_DATABASE'
defined_tags
dictionary
Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace": {"bar-key": "value"}}`
This parameter is updatable.
deployment_type
string
    Choices:
  • VIRTUAL_MACHINE
  • BARE_METAL
  • EXACS
Database Deployment Type
Required when entity_source is 'PE_COMANAGED_DATABASE'
enterprise_manager_bridge_id
string
OPSI Enterprise Manager Bridge OCID
Required when entity_source is 'EM_MANAGED_EXTERNAL_DATABASE'
enterprise_manager_entity_identifier
string
Enterprise Manager Entity Unique Identifier
Required when entity_source is 'EM_MANAGED_EXTERNAL_DATABASE'
enterprise_manager_identifier
string
Enterprise Manager Unique Identifier
Required when entity_source is 'EM_MANAGED_EXTERNAL_DATABASE'
entity_source
string
    Choices:
  • EM_MANAGED_EXTERNAL_DATABASE
  • PE_COMANAGED_DATABASE
  • MACS_MANAGED_EXTERNAL_DATABASE
  • AUTONOMOUS_DATABASE
Source of the database entity.
Required for create using state=present, update using state=present with database_insight_id present.
exadata_insight_id
string
The OCID of the Exadata insight.
Applicable when entity_source is 'EM_MANAGED_EXTERNAL_DATABASE'
force_create
boolean
    Choices:
  • no ←
  • yes
Whether to attempt non-idempotent creation of a resource. By default, create resource is an idempotent operation, and doesn't create the resource if it already exists. Setting this option to true, forcefully creates a copy of the resource, even if it already exists.This option is mutually exclusive with key_by.
freeform_tags
dictionary
Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}`
This parameter is updatable.
key_by
list / elements=string
The list of attributes of this resource which should be used to uniquely identify an instance of the resource. By default, all the attributes of a resource are used to uniquely identify a resource.
opsi_private_endpoint_id
string
The OCID of the OPSI private endpoint
Applicable when entity_source is 'PE_COMANAGED_DATABASE'
region
string
The Oracle Cloud Infrastructure region to use for all OCI API requests. If not set, then the value of the OCI_REGION variable, if any, is used. This option is required if the region is not specified through a configuration file (See config_file_location). Please refer to https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/regions.htm for more information on OCI regions.
service_name
string
Database service name used for connection requests.
Required when entity_source is 'PE_COMANAGED_DATABASE'
state
string
    Choices:
  • present ←
  • absent
The state of the DatabaseInsights.
Use state=present to create or update a DatabaseInsights.
Use state=absent to delete a DatabaseInsights.
system_tags
dictionary
System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud": {"free-tier-retained": "true"}}`
Applicable when entity_source is 'PE_COMANAGED_DATABASE'
tenancy
string
OCID of your tenancy. If not set, then the value of the OCI_TENANCY variable, if any, is used. This option is required if the tenancy OCID is not specified through a configuration file (See config_file_location). To get the tenancy OCID, please refer https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm
wait
boolean
    Choices:
  • no
  • yes ←
Whether to wait for create or delete operation to complete.
wait_timeout
integer
Time, in seconds, to wait when wait=yes. Defaults to 1200 for most of the services but some services might have a longer wait timeout.

Examples

- name: Create database_insights with entity_source = EM_MANAGED_EXTERNAL_DATABASE
  oci_opsi_database_insights:
    # required
    enterprise_manager_identifier: enterprise_manager_identifier_example
    enterprise_manager_bridge_id: "ocid1.enterprisemanagerbridge.oc1..xxxxxxEXAMPLExxxxxx"
    enterprise_manager_entity_identifier: enterprise_manager_entity_identifier_example
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
    entity_source: EM_MANAGED_EXTERNAL_DATABASE

    # optional
    exadata_insight_id: "ocid1.exadatainsight.oc1..xxxxxxEXAMPLExxxxxx"
    freeform_tags: {'Department': 'Finance'}
    defined_tags: {'Operations': {'CostCenter': 'US'}}

- name: Create database_insights with entity_source = PE_COMANAGED_DATABASE
  oci_opsi_database_insights:
    # required
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
    database_id: "ocid1.database.oc1..xxxxxxEXAMPLExxxxxx"
    database_resource_type: database_resource_type_example
    service_name: service_name_example
    credential_details:
      # required
      credential_source_name: credential_source_name_example
      credential_type: CREDENTIALS_BY_SOURCE
    deployment_type: VIRTUAL_MACHINE
    entity_source: PE_COMANAGED_DATABASE

    # optional
    opsi_private_endpoint_id: "ocid1.opsiprivateendpoint.oc1..xxxxxxEXAMPLExxxxxx"
    dbm_private_endpoint_id: "ocid1.dbmprivateendpoint.oc1..xxxxxxEXAMPLExxxxxx"
    system_tags: null
    freeform_tags: {'Department': 'Finance'}
    defined_tags: {'Operations': {'CostCenter': 'US'}}

- name: Create database_insights with entity_source = MACS_MANAGED_EXTERNAL_DATABASE
  oci_opsi_database_insights:
    # required
    entity_source: MACS_MANAGED_EXTERNAL_DATABASE

    # optional
    freeform_tags: {'Department': 'Finance'}
    defined_tags: {'Operations': {'CostCenter': 'US'}}

- name: Create database_insights with entity_source = AUTONOMOUS_DATABASE
  oci_opsi_database_insights:
    # required
    entity_source: AUTONOMOUS_DATABASE

    # optional
    freeform_tags: {'Department': 'Finance'}
    defined_tags: {'Operations': {'CostCenter': 'US'}}

- name: Update database_insights with entity_source = EM_MANAGED_EXTERNAL_DATABASE
  oci_opsi_database_insights:
    # required
    entity_source: EM_MANAGED_EXTERNAL_DATABASE

    # optional
    freeform_tags: {'Department': 'Finance'}
    defined_tags: {'Operations': {'CostCenter': 'US'}}

- name: Update database_insights with entity_source = PE_COMANAGED_DATABASE
  oci_opsi_database_insights:
    # required
    entity_source: PE_COMANAGED_DATABASE

    # optional
    freeform_tags: {'Department': 'Finance'}
    defined_tags: {'Operations': {'CostCenter': 'US'}}

- name: Update database_insights with entity_source = MACS_MANAGED_EXTERNAL_DATABASE
  oci_opsi_database_insights:
    # required
    entity_source: MACS_MANAGED_EXTERNAL_DATABASE

    # optional
    freeform_tags: {'Department': 'Finance'}
    defined_tags: {'Operations': {'CostCenter': 'US'}}

- name: Update database_insights with entity_source = AUTONOMOUS_DATABASE
  oci_opsi_database_insights:
    # required
    entity_source: AUTONOMOUS_DATABASE

    # optional
    freeform_tags: {'Department': 'Finance'}
    defined_tags: {'Operations': {'CostCenter': 'US'}}

- name: Delete database_insights
  oci_opsi_database_insights:
    # required
    database_insight_id: "ocid1.databaseinsight.oc1..xxxxxxEXAMPLExxxxxx"
    state: absent

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
database_insights
complex
on success
Details of the DatabaseInsights resource acted upon by the current operation

Sample:
{'compartment_id': 'ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx', 'connection_credential_details': {'credential_source_name': 'credential_source_name_example', 'credential_type': 'CREDENTIALS_BY_SOURCE', 'password_secret_id': 'ocid1.passwordsecret.oc1..xxxxxxEXAMPLExxxxxx', 'role': 'NORMAL', 'user_name': 'user_name_example'}, 'connection_details': {'host_name': 'host_name_example', 'hosts': [{'host_ip': 'host_ip_example', 'port': 56}], 'port': 56, 'protocol': 'TCP', 'service_name': 'service_name_example'}, 'connector_id': 'ocid1.connector.oc1..xxxxxxEXAMPLExxxxxx', 'credential_details': {'credential_source_name': 'credential_source_name_example', 'credential_type': 'CREDENTIALS_BY_SOURCE', 'password_secret_id': 'ocid1.passwordsecret.oc1..xxxxxxEXAMPLExxxxxx', 'role': 'NORMAL', 'user_name': 'user_name_example'}, 'database_connection_status_details': 'database_connection_status_details_example', 'database_display_name': 'database_display_name_example', 'database_id': 'ocid1.database.oc1..xxxxxxEXAMPLExxxxxx', 'database_name': 'database_name_example', 'database_resource_type': 'database_resource_type_example', 'database_type': 'database_type_example', 'database_version': 'database_version_example', 'db_additional_details': {}, 'defined_tags': {'Operations': {'CostCenter': 'US'}}, 'enterprise_manager_bridge_id': 'ocid1.enterprisemanagerbridge.oc1..xxxxxxEXAMPLExxxxxx', 'enterprise_manager_entity_display_name': 'enterprise_manager_entity_display_name_example', 'enterprise_manager_entity_identifier': 'enterprise_manager_entity_identifier_example', 'enterprise_manager_entity_name': 'enterprise_manager_entity_name_example', 'enterprise_manager_entity_type': 'enterprise_manager_entity_type_example', 'enterprise_manager_identifier': 'enterprise_manager_identifier_example', 'entity_source': 'AUTONOMOUS_DATABASE', 'exadata_insight_id': 'ocid1.exadatainsight.oc1..xxxxxxEXAMPLExxxxxx', 'freeform_tags': {'Department': 'Finance'}, 'id': 'ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx', 'lifecycle_details': 'lifecycle_details_example', 'lifecycle_state': 'CREATING', 'management_agent_id': 'ocid1.managementagent.oc1..xxxxxxEXAMPLExxxxxx', 'opsi_private_endpoint_id': 'ocid1.opsiprivateendpoint.oc1..xxxxxxEXAMPLExxxxxx', 'processor_count': 56, 'status': 'DISABLED', 'system_tags': {}, 'time_created': '2013-10-20T19:20:30+01:00', 'time_updated': '2013-10-20T19:20:30+01:00'}
 
compartment_id
string
on success
Compartment identifier of the database

Sample:
ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
 
connection_credential_details
complex
on success

   
credential_source_name
string
on success
Credential source name that had been added in Management Agent wallet. This is supplied in the External Database Service.

Sample:
credential_source_name_example
   
credential_type
string
on success
Credential type.

Sample:
CREDENTIALS_BY_SOURCE
   
password_secret_id
string
on success
The secret OCID mapping to the database credentials.

Sample:
ocid1.passwordsecret.oc1..xxxxxxEXAMPLExxxxxx
   
role
string
on success
database user role.

Sample:
NORMAL
   
user_name
string
on success
database user name.

Sample:
user_name_example
 
connection_details
complex
on success

   
host_name
string
on success
Name of the listener host that will be used to create the connect string to the database.

Sample:
host_name_example
   
hosts
complex
on success
List of hosts and port for private endpoint accessed database resource.

     
host_ip
string
on success
Host IP used for connection requests for Cloud DB resource.

Sample:
host_ip_example
     
port
integer
on success
Listener port number used for connection requests for rivate endpoint accessed db resource.

Sample:
56
   
port
integer
on success
Listener port number used for connection requests.

Sample:
56
   
protocol
string
on success
Protocol used for connection requests.

Sample:
TCP
   
service_name
string
on success
Database service name used for connection requests.

Sample:
service_name_example
 
connector_id
string
on success
The OCID of External Database Connector

Sample:
ocid1.connector.oc1..xxxxxxEXAMPLExxxxxx
 
credential_details
complex
on success

   
credential_source_name
string
on success
Credential source name that had been added in Management Agent wallet. This is supplied in the External Database Service.

Sample:
credential_source_name_example
   
credential_type
string
on success
Credential type.

Sample:
CREDENTIALS_BY_SOURCE
   
password_secret_id
string
on success
The secret OCID mapping to the database credentials.

Sample:
ocid1.passwordsecret.oc1..xxxxxxEXAMPLExxxxxx
   
role
string
on success
database user role.

Sample:
NORMAL
   
user_name
string
on success
database user name.

Sample:
user_name_example
 
database_connection_status_details
string
on success
A message describing the status of the database connection of this resource. For example, it can be used to provide actionable information about the permission and content validity of the database connection.

Sample:
database_connection_status_details_example
 
database_display_name
string
on success
Display name of database

Sample:
database_display_name_example
 
database_id
string
on success
The OCID of the database.

Sample:
ocid1.database.oc1..xxxxxxEXAMPLExxxxxx
 
database_name
string
on success
Name of database

Sample:
database_name_example
 
database_resource_type
string
on success
OCI database resource type

Sample:
database_resource_type_example
 
database_type
string
on success
Operations Insights internal representation of the database type.

Sample:
database_type_example
 
database_version
string
on success
The version of the database.

Sample:
database_version_example
 
db_additional_details
dictionary
on success
Additional details of a database in JSON format. For autonomous databases, this is the AutonomousDatabase object serialized as a JSON string as defined in https://docs.cloud.oracle.com/en-us/iaas/api/#/en/database/20160918/AutonomousDatabase/. For EM, pass in null or an empty string. Note that this string needs to be escaped when specified in the curl command.

 
defined_tags
dictionary
on success
Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace": {"bar-key": "value"}}`

Sample:
{'Operations': {'CostCenter': 'US'}}
 
enterprise_manager_bridge_id
string
on success
OPSI Enterprise Manager Bridge OCID

Sample:
ocid1.enterprisemanagerbridge.oc1..xxxxxxEXAMPLExxxxxx
 
enterprise_manager_entity_display_name
string
on success
Enterprise Manager Entity Display Name

Sample:
enterprise_manager_entity_display_name_example
 
enterprise_manager_entity_identifier
string
on success
Enterprise Manager Entity Unique Identifier

Sample:
enterprise_manager_entity_identifier_example
 
enterprise_manager_entity_name
string
on success
Enterprise Manager Entity Name

Sample:
enterprise_manager_entity_name_example
 
enterprise_manager_entity_type
string
on success
Enterprise Manager Entity Type

Sample:
enterprise_manager_entity_type_example
 
enterprise_manager_identifier
string
on success
Enterprise Manager Unique Identifier

Sample:
enterprise_manager_identifier_example
 
entity_source
string
on success
Source of the database entity.

Sample:
AUTONOMOUS_DATABASE
 
exadata_insight_id
string
on success
The OCID of the Exadata insight.

Sample:
ocid1.exadatainsight.oc1..xxxxxxEXAMPLExxxxxx
 
freeform_tags
dictionary
on success
Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}`

Sample:
{'Department': 'Finance'}
 
id
string
on success
Database insight identifier

Sample:
ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
 
lifecycle_details
string
on success
A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state.

Sample:
lifecycle_details_example
 
lifecycle_state
string
on success
The current state of the database.

Sample:
CREATING
 
management_agent_id
string
on success
The OCID of the Management Agent

Sample:
ocid1.managementagent.oc1..xxxxxxEXAMPLExxxxxx
 
opsi_private_endpoint_id
string
on success
The OCID of the OPSI private endpoint

Sample:
ocid1.opsiprivateendpoint.oc1..xxxxxxEXAMPLExxxxxx
 
processor_count
integer
on success
Processor count. This is the OCPU count for Autonomous Database and CPU core count for other database types.

Sample:
56
 
status
string
on success
Indicates the status of a database insight in Operations Insights

Sample:
DISABLED
 
system_tags
dictionary
on success
System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud": {"free-tier-retained": "true"}}`

 
time_created
string
on success
The time the the database insight was first enabled. An RFC3339 formatted datetime string

Sample:
2013-10-20T19:20:30+01:00
 
time_updated
string
on success
The time the database insight was updated. An RFC3339 formatted datetime string

Sample:
2013-10-20T19:20:30+01:00


Authors

  • Oracle (@oracle)