XDCR monitoring on Couchbase clusters

Hi team , i am setting up XDCR between two clusters , is there a way to identify documents in sync or approximate time to know the buckets are in sync.

Please share if there is a way to track it using restapi calls or commands

Thanks
Ram

For monitoring XDCR, recommendation is to use the XDCR stats, which can be viewed/obtained in multiple ways – see https://docs.couchbase.com/server/current/metrics-reference/xdcr-metrics.html

Couchbase Server also provides API endpoints that you can use to configure Prometheus to collect the stats – see https://docs.couchbase.com/server/current/manage/monitor/set-up-prometheus-for-monitoring.html

The xdcr_changes_left_total is a useful metric for observing the progress of replication when you’ve just started the replication or after you’ve loaded a large amount of data.

Depending on scenarios (what you are trying to achieve), you can also:

  • Programmatically check the CAS of documents on source and target clusters – when a document is replicated, the CAS does not change
  • Use the xdcrDiffer utility (https://github.com/couchbase/xdcrDiffer) to run a report
  • Can use the Kafka connector (https://docs.couchbase.com/kafka-connector/current/index.html) to retrieve changes from the source bucket and confirm the changes on the target

Note:
Other useful metrics for monitoring the XDCR replications include xdcr_docs_written_total, xdcr_pipeline_errors, xdcr_pipeline_status, xdcr_wtavg_docs_latency_seconds, xdcr_docs_failed_cr_target_total, xdcr_docs_failed_cr_source_total, …

2 Likes