anchor.diff:  
   [NOTE]
   ====
  -We do encourage the use of the LogMiner implementation for testing purposes and providing us with your feedback, but we do not yet recommend its use in production as its still under active development.
  -====
  -
  -[[oracle-monitoring]]
  -=== Monitoring
  -
  -The {prodname} Oracle connector has three metric types in addition to the built-in support for JMX metrics that Zookeeper, Kafka, and Kafka Connect have.
  -
  -* <<oracle-snapshot-metrics, snapshot metrics>>; for monitoring the connector when performing snapshots
  -* <<oracle-streaming-metrics, streaming metrics>>; for monitoring the connector when processing change events
  -* <<oracle-monitoring-streaming-logminer, logminer metrics>>; additional metrics captured when using the LogMiner adpter to process change events
  -* <<oracle-schema-history-metrics, schema history metrics>>; for monitoring the status of the connector's schema history
  -
  -Please refer to the {link-prefix}:{link-debezium-monitoring}#monitoring-debezium[monitoring documentation] for details of how to expose these metrics via JMX.
  -
  -[[oracle-monitoring-snapshots]]
  -[[oracle-snapshot-metrics]]
  -==== Snapshot Metrics
  -
  -The *MBean* is `debezium.oracle:type=connector-metrics,context=snapshot,server=_<database.server.name>_`.
  -
  -include::{partialsdir}/modules/all-connectors/ref-connector-monitoring-snapshot-metrics.adoc[leveloffset=+1]
  -
  -[[oracle-monitoring-streaming]]
  -[[oracle-streaming-metrics]]
  -==== Streaming Metrics
  -
  -The *MBean* is `debezium.oracle:type=connector-metrics,context=streaming,server=_<database.server.name>_`.
  -
  -include::{partialsdir}/modules/all-connectors/ref-connector-monitoring-streaming-metrics.adoc[leveloffset=+1]
  -
  -[[oracle-monitoring-streaming-logminer]]
  -==== LogMiner Metrics
  -
  -The *MBean* is `debezium.oracle:type=connector-metrics,context=log-miner,server=_<database.server.name>_`.
  -
  -[cols="45%a,25%a,30%a"]
  -|===
  -|Attributes |Type |Description
  -
  -|[[log-miner-metrics-currentscn]]<<log-miner-metrics-currentscn, `+CurrentScn+`>>
  -|`long`
  -|The most recent SCN that has been processed.
  -
  -|[[log-miner-metrics-currentredologfilename]]<<log-miner-metrics-currentredologfilename, `+CurrentRedoLogFileName+`>>
  -|`string[]`
  -|Array of the log files that are currently mined.
  -
  -|[[log-miner-metrics-minimumminedlogcount]]<<log-miner-metrics-minimumminedlogcount, `+MinimumMinedLogCount+`>>
  -|`long`
  -|The minimum number of logs specified for any LogMiner session.
  -
  -|[[log-miner-metrics-maximumminedlogcount]]<<log-miner-metrics-maximumminedlogcount, `+MaximumMinedLogCount+`>>
  -|`long`
  -|The maximum number of logs specified for any LogMiner session.
  -
  -|[[log-miner-metrics-redologstatus]]<<log-miner-metrics-redologstatus, `+RedoLogStatus+`>>
  -|`string[]`
  -|Array of the current state for each mined logfile with the format `_filename_\|_status_`.
  -
  -|[[log-miner-metrics-switchcounter]]<<log-miner-metrics-switchcounter, `+SwitchCounter+`>>
  -|`int`
  -|The number of times the database has performed a log switch for the last day.
  -
  -|[[log-miner-metrics-lastcaptureddmlcount]]<<log-miner-metrics-lastcaptureddmlcount, `+LastCapturedDmlCount+`>>
  -|`long`
  -|The number of DML operations observed in the last LogMiner session query.
  -
  -|[[log-miner-metrics-maxcaptureddmlinbatch]]<<log-miner-metrics-maxcaptureddmlinbatch, `+MaxCapturedDmlInBatch+`>>
  -|`long`
  -|The maximum number of DML operations observed while processing a single LogMiner session query.
  -
  -|[[log-miner-metrics-totalcaptureddmlcount]]<<log-miner-metrics-totalcaptureddmlcount, `+TotalCapturedDmlCount+`>>
  -|`long`
  -|The total number of DML operations observed.
  -
  -|[[log-miner-metrics-fetchingquerycount]]<<log-miner-metrics-fetchingquerycount, `+FetchingQueryCount+`>>
  -|`long`
  -|The total number of LogMiner session query (aka batches) performed.
  -
  -|[[log-miner-metrics-lastdurationoffetchqueryinmilliseconds]]<<log-miner-metrics-lastdurationoffetchqueryinmilliseconds, `+LastDurationOfFetchQueryInMilliseconds+`>>
  -|`long`
  -|The duration of the last LogMiner session query's fetch in milliseconds.
  -
  -|[[log-miner-metrics-maxdurationoffetchqueryinmilliseconds]]<<log-miner-metrics-maxdurationoffetchqueryinmilliseconds, `+MaxDurationOfFetchQueryInMilliseconds+`>>
  -|`long`
  -|The maximum duration of any LogMiner session query's fetch in milliseconds.
  -
  -|[[log-miner-metrics-lastbatchprocessingtimeinmilliseconds]]<<log-miner-metrics-lastbatchprocessingtimeinmilliseconds, `+LastBatchProcessingTimeInMilliseconds+`>>
  -|`long`
  -|The duration for processing the last LogMiner query batch results in milliseconds.
  -
  -|[[log-miner-metrics-totalparsetimeinmilliseconds]]<<log-miner-metrics-totalparsetimeinmilliseconds, `+TotalParseTimeInMilliseconds+`>>
  -|`long`
  -|The time in milliseconds spent parsing DML event SQL sattements.
  -
  -|[[log-miner-metrics-lastminingsessionstarttimeinmilliseconds]]<<log-miner-metrics-lastminingsessionstarttimeinmilliseconds, `+LastMiningSessionStartTimeInMilliseconds+`>>
  -|`long`
  -|The duration in milliseconds to start the last LogMiner session.
  -
  -|[[log-miner-metrics-maxminingsessionstarttimeinmilliseconds]]<<log-miner-metrics-maxminingsessionstarttimeinmilliseconds, `+MaxMiningSessionStartTimeInMilliseconds+`>>
  -|`long`
  -|The longest duration in milliseconds to start a LogMiner session.
  -
  -|[[log-miner-metrics-totalminingsessionstarttimeinmilliseconds]]<<log-miner-metrics-totalminingsessionstarttimeinmilliseconds, `+TotalMiningSessionStartTimeInMilliseconds+`>>
  -|`long`
  -|The total duration in milliseconds spent by the connector starting LogMiner sessions.
  -
  -|[[log-miner-metrics-minbatchprocessingtimeinmilliseconds]]<<log-miner-metrics-minbatchprocessingtimeinmilliseconds, `+MinBatchProcessingTimeInMilliseconds+`>>
  -|`long`
  -|The minimum duration in milliseconds spent processing results from a single LogMiner session.
  -
  -|[[log-miner-metrics-maxbatchprocessingtimeinmilliseconds]]<<log-miner-metrics-maxbatchprocessingtimeinmilliseconds, `+MaxBatchProcessingTimeInMilliseconds+`>>
  -|`long`
  -|The maximum duration in milliseconds spent processing results from a single LogMiner session.
  -
  -|[[log-miner-metrics-totalprocessingtimeinmilliseconds]]<<log-miner-metrics-totalprocessingtimeinmilliseconds, `+TotalProcessingTimeInMilliseconds+`>>
  -|`long`
  -|The total duration in milliseconds spent processing results from LogMiner sessions.
  -
  -|[[log-miner-metrics-totalresultsetnexttimeinmilliseconds]]<<log-miner-metrics-totalresultsetnexttimeinmilliseconds, `+TotalResultSetNextTimeInMilliseconds+`>>
  -|`long`
  -|The total duration in milliseconds spent by the JDBC driver fetching the next row to be processed from the log mining view.
  -
  -|[[log-miner-metrics-totalprocessedrows]]<<log-miner-metrics-totalprocessedrows, `+TotalProcessedRows+`>>
  -|`long`
  -|The total number of rows processed from the log mining view across all sessions.
  -
  -|[[log-miner-metrics-batchsize]]<<log-miner-metrics-batchsize, `+BatchSize+`>>
  -|`int`
  -|The number of entries fetched by the log mining query per database round-trip.
  -
  -|[[log-miner-metrics-millisecondtosleepbetweenminingquery]]<<log-miner-metrics-millisecondtosleepbetweenminingquery, `+MillisecondToSleepBetweenMiningQuery+`>>
  -|`long`
  -|The number of milliseconds the connector sleeps before fetching another batch of results from the log mining view.
  -
  -|[[log-miner-metrics-maxbatchprocessingthroughput]]<<log-miner-metrics-maxbatchprocessingthroughput, `+MaxBatchProcessingThroughput+`>>
  -|`long`
  -|The maximum number of rows/second processed from the log mining view.
  -
  -|[[log-miner-metrics-averagebatchprocessingthroughput]]<<log-miner-metrics-averagebatchprocessingthroughput, `+AverageBatchProcessingThroughput+`>>
  -|`long`
  -|The average number of rows/second processed from the log mining.
  -
  -|[[log-miner-metrics-lastbatchprocessingthroughput]]<<log-miner-metrics-lastbatchprocessingthroughput, `+LastBatchProcessingThroughput+`>>
  -|`long`
  -|The average number of rows/second processed from the log mining view for the last batch.
  -
  -|[[log-miner-metrics-networkconnectionproblemscounter]]<<log-miner-metrics-networkconnectionproblemscounter, `+NetworkConnectionProblemsCounter+`>>
  -|`long`
  -|The number of connection problems detected.
  -
  -|[[log-miner-metrics-hourstokeeptransactioninbuffer]]<<log-miner-metrics-hourstokeeptransactioninbuffer, `+HoursToKeepTransactionInBuffer+`>>
  -|`int`
  -|The number of hours that transactions will be retained by the connector's in-memory buffer without being committed or rolled back before being discarded.
  -See <<oracle-property-log-mining-transaction-retention-hours, `log.mining.transaction.retention`>> for more details.
  -
  -|[[log-miner-metrics-recordmininghistory]]<<log-miner-metrics-recordmininghistory, `+RecordMiningHistory+`>>
  -|`boolean`
  -|Flag that indicates if the mining results are being recorded.
  -See <<oracle-property-log-mining-history-recorder-class, `log.mining.history.recorder.clas`>> for more details.
  -
  -|===
  -
  -[[oracle-monitoring-schema-history]]
  -[[oracle-schema-history-metrics]]
  -==== Schema History Metrics
  -
  -The *MBean* is `debezium.mysql:type=connector-metrics,context=schema-history,server=_<database.server.name>_`.
  -
  -include::{partialsdir}/modules/all-connectors/ref-connector-monitoring-schema-history-metrics.adoc[leveloffset=+1]
  +We encourage the use of the LogMiner adapter for testing and feedback purposes, but we do not yet recommend it for production use as its still under active development.
  +====
   
   [[oracle-connector-properties]]
   === Connector Properties
  
positive.code: }
  ----
  
  The fields
  
  * `databaseName` and `schemaName` describe which database/schema has been affected
  * `ddl` contains the DDL responsible for the schema change
  * `tableChanges` array contains one or more schema changes generated by the DDL command
  * `type` describes the kind of the change: `CREATE` - table created, `ALTER` - table modified, `DROP` - table deleted
  * `id` is the full identifier of the table
  * `table` represents table metadata after the applied change
  * `primaryKeyColumnNames` is a list of columns that compose the table primary key
  * `columns` are column metadata of each of the columns
  
  The schema change messages use as the key the name of the database to which the changes apply:
  
  [source,json,indent=0,subs="attributes"]
  ----
  
negative.code: }
  ----
  
  [WARNING]
  ====
  When using CDB installations, specify `database.pbd.name`. +
  When using a non-CDB installation, do *not* specify the `database.pdb.name`.
  ====
  
  [[selecting-the-adapter]]
  === Selecting the adapter
  
  {prodname} provides multiple ways to ingest change events from Oracle.
  By default {prodname} uses the XStream API but this isn't always applicable for every installation.
  