Search:

Search all manuals
Search this manual
Manual
Couchbase Server Manual 2.0
Community Wiki and Resources
Download Couchbase Server 2.0
Couchbase Developer Guide 2.0
Client Libraries
Couchbase Server Forum
Additional Resources
Community Wiki
Community Forums
Couchbase SDKs
Parent Section
7.5 cbstats Tool
Chapter Sections
Chapters

7.5.3. Getting TAP Information

Couchbase Server uses an internal protocol known as TAP to stream information about data changes between cluster nodes. Couchbase Server uses the TAP protocol during 1) rebalance, 2) replication at other cluster nodes, and 3) persistence of items to disk.

Be aware that this tool is a per-node, per-bucket operation. That means that if you want to perform this operation, you must specify the IP address of a node in the cluster and a named bucket. If you do not provided a named bucket, the server will apply the setting to any default bucket that exists at the specified node. If you want to perform this operation for an entire cluster, you will need to perform the command for every node/bucket combination that exists for that cluster.

The following statistics will be output in response to a cbstats tap request:

ep_tap_total_queueSum of tap queue sizes on the current tap queues
ep_tap_total_fetchedSum of all tap messages sent
ep_tap_bg_max_pendingThe maximum number of background jobs a tap connection may have
ep_tap_bg_fetchedNumber of tap disk fetches
ep_tap_bg_fetch_requeuedNumber of times a tap background fetch task is requeued.
ep_tap_fg_fetchedNumber of tap memory fetches
ep_tap_deletesNumber of tap deletion messages sent
ep_tap_throttledNumber of tap messages refused due to throttling.
ep_tap_keepaliveHow long to keep tap connection state after client disconnect.
ep_tap_countNumber of tap connections.
ep_tap_bg_num_samplesThe number of tap background fetch samples included in the average
ep_tap_bg_min_waitThe shortest time (µs) for a tap item before it is serviced by the dispatcher
ep_tap_bg_max_waitThe longest time (µs) for a tap item before it is serviced by the dispatcher
ep_tap_bg_wait_avgThe average wait time (µs) for a tap item before it is serviced by the dispatcher
ep_tap_bg_min_loadThe shortest time (µs) for a tap item to be loaded from the persistence layer
ep_tap_bg_max_loadThe longest time (µs) for a tap item to be loaded from the persistence layer
ep_tap_bg_load_avgThe average time (µs) for a tap item to be loaded from the persistence layer
ep_tap_noop_intervalThe number of secs between a no-op is added to an idle connection
ep_tap_backoff_periodThe number of seconds the tap connection should back off after receiving ETMPFAIL
ep_tap_queue_fillTotal enqueued items
ep_tap_queue_drainTotal drained items
ep_tap_queue_backoffTotal back-off items
ep_tap_queue_backfillNumber of backfill remaining
ep_tap_queue_itemondiskNumber of items remaining on disk
ep_tap_throttle_thresholdPercentage of memory in use before we throttle tap streams
ep_tap_throttle_queue_capDisk write queue cap to throttle tap streams

You use the cbstats tapagg to get statistics from named tap connections which are logically grouped and aggregated together by prefixes.

For example, if all of your tap connections started with rebalance_ or replication_, you could call stats tapagg _ to request stats grouped by the prefix starting with _. This would return a set of statistics for rebalance and a set for replication. The following are possible values returned by cbstats tapagg:

[prefix]:countNumber of connections matching this prefix
[prefix]:qlenTotal length of queues with this prefix
[prefix]:backfill_remainingNumber of items needing to be backfilled
[prefix]:backoffTotal number of backoff events
[prefix]:drainTotal number of items drained
[prefix]:fillTotal number of items filled
[prefix]:itemondiskNumber of items remaining on disk
[prefix]:total_backlog_sizeNumber of remaining items for replication