ports/net/samba420/files/man/ctdb-statistics.7
Xavier Beaudouin 8736a24d16 net/samba420: Repocopy from net/samba419
PR:		280533
Sponsored by:	Klara, Inc.
Approved by:	0mp (mentor)
Approved by:	samba (0mp, kiwi)
2025-01-30 15:42:00 +01:00

550 lines
15 KiB
Groff

'\" t
.\" Title: ctdb-statistics
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 09/23/2020
.\" Manual: CTDB - clustered TDB database
.\" Source: ctdb
.\" Language: English
.\"
.TH "CTDB\-STATISTICS" "7" "09/23/2020" "ctdb" "CTDB \- clustered TDB database"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
ctdb-statistics \- CTDB statistics output
.SH "OVERALL STATISTICS"
.PP
CTDB maintains information about various messages communicated and some of the important operations per node\&. See the
\fBctdb\fR(1)
commands
\fBstatistics\fR
and
\fBstatisticsreset\fR
for displaying statistics\&.
.SS "Example: ctdb statistics"
.sp
.if n \{\
.RS 4
.\}
.nf
CTDB version 1
Current time of statistics : Fri Sep 12 13:32:32 2014
Statistics collected since : (000 01:49:20) Fri Sep 12 11:43:12 2014
num_clients 6
frozen 0
recovering 0
num_recoveries 2
client_packets_sent 281293
client_packets_recv 296317
node_packets_sent 452387
node_packets_recv 182394
keepalive_packets_sent 3927
keepalive_packets_recv 3928
node
req_call 48605
reply_call 1
req_dmaster 23404
reply_dmaster 24917
reply_error 0
req_message 958
req_control 197513
reply_control 153705
client
req_call 130866
req_message 770
req_control 168921
timeouts
call 0
control 0
traverse 0
locks
num_calls 220
num_current 0
num_pending 0
num_failed 0
total_calls 130866
pending_calls 0
childwrite_calls 1
pending_childwrite_calls 0
memory_used 334490
max_hop_count 18
total_ro_delegations 2
total_ro_revokes 2
hop_count_buckets: 42816 5464 26 1 0 0 0 0 0 0 0 0 0 0 0 0
lock_buckets: 9 165 14 15 7 2 2 0 0 0 0 0 0 0 0 0
locks_latency MIN/AVG/MAX 0\&.000685/0\&.160302/6\&.369342 sec out of 214
reclock_ctdbd MIN/AVG/MAX 0\&.004940/0\&.004969/0\&.004998 sec out of 2
reclock_recd MIN/AVG/MAX 0\&.000000/0\&.000000/0\&.000000 sec out of 0
call_latency MIN/AVG/MAX 0\&.000006/0\&.000719/4\&.562991 sec out of 126626
childwrite_latency MIN/AVG/MAX 0\&.014527/0\&.014527/0\&.014527 sec out of 1
.fi
.if n \{\
.RE
.\}
.SS "CTDB version"
.PP
Version of the ctdb protocol used by the node\&.
.SS "Current time of statistics"
.PP
Time when the statistics are generated\&.
.PP
This is useful when collecting statistics output periodically for post\-processing\&.
.SS "Statistics collected since"
.PP
Time when ctdb was started or the last time statistics was reset\&. The output shows the duration and the timestamp\&.
.SS "num_clients"
.PP
Number of processes currently connected to CTDB\*(Aqs unix socket\&. This includes recovery daemon, ctdb tool and samba processes (smbd, winbindd)\&.
.SS "frozen"
.PP
1 if the databases are currently frozen, 0 otherwise\&.
.SS "recovering"
.PP
1 if recovery is active, 0 otherwise\&.
.SS "num_recoveries"
.PP
Number of recoveries since the start of ctdb or since the last statistics reset\&.
.SS "client_packets_sent"
.PP
Number of packets sent to client processes via unix domain socket\&.
.SS "client_packets_recv"
.PP
Number of packets received from client processes via unix domain socket\&.
.SS "node_packets_sent"
.PP
Number of packets sent to the other nodes in the cluster via TCP\&.
.SS "node_packets_recv"
.PP
Number of packets received from the other nodes in the cluster via TCP\&.
.SS "keepalive_packets_sent"
.PP
Number of keepalive messages sent to other nodes\&.
.PP
CTDB periodically sends keepalive messages to other nodes\&. See
KeepaliveInterval
tunable in
\fBctdb-tunables\fR(7)
for more details\&.
.SS "keepalive_packets_recv"
.PP
Number of keepalive messages received from other nodes\&.
.SS "node"
.PP
This section lists various types of messages processed which originated from other nodes via TCP\&.
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBreq_call\fR
.RS 4
.PP
Number of REQ_CALL messages from the other nodes\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBreply_call\fR
.RS 4
.PP
Number of REPLY_CALL messages from the other nodes\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBreq_dmaster\fR
.RS 4
.PP
Number of REQ_DMASTER messages from the other nodes\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBreply_dmaster\fR
.RS 4
.PP
Number of REPLY_DMASTER messages from the other nodes\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBreply_error\fR
.RS 4
.PP
Number of REPLY_ERROR messages from the other nodes\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBreq_message\fR
.RS 4
.PP
Number of REQ_MESSAGE messages from the other nodes\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBreq_control\fR
.RS 4
.PP
Number of REQ_CONTROL messages from the other nodes\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBreply_control\fR
.RS 4
.PP
Number of REPLY_CONTROL messages from the other nodes\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBreq_tunnel\fR
.RS 4
.PP
Number of REQ_TUNNEL messages from the other nodes\&.
.RE
.SS "client"
.PP
This section lists various types of messages processed which originated from clients via unix domain socket\&.
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBreq_call\fR
.RS 4
.PP
Number of REQ_CALL messages from the clients\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBreq_message\fR
.RS 4
.PP
Number of REQ_MESSAGE messages from the clients\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBreq_control\fR
.RS 4
.PP
Number of REQ_CONTROL messages from the clients\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBreq_tunnel\fR
.RS 4
.PP
Number of REQ_TUNNEL messages from the clients\&.
.RE
.SS "timeouts"
.PP
This section lists timeouts occurred when sending various messages\&.
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBcall\fR
.RS 4
.PP
Number of timeouts for REQ_CALL messages\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBcontrol\fR
.RS 4
.PP
Number of timeouts for REQ_CONTROL messages\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBtraverse\fR
.RS 4
.PP
Number of timeouts for database traverse operations\&.
.RE
.SS "locks"
.PP
This section lists locking statistics\&.
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBnum_calls\fR
.RS 4
.PP
Number of completed lock calls\&. This includes database locks and record locks\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBnum_current\fR
.RS 4
.PP
Number of scheduled lock calls\&. This includes database locks and record locks\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBnum_pending\fR
.RS 4
.PP
Number of queued lock calls\&. This includes database locks and record locks\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBnum_failed\fR
.RS 4
.PP
Number of failed lock calls\&. This includes database locks and record locks\&.
.RE
.SS "total_calls"
.PP
Number of req_call messages processed from clients\&. This number should be same as client \-\-> req_call\&.
.SS "pending_calls"
.PP
Number of req_call messages which are currently being processed\&. This number indicates the number of record migrations in flight\&.
.SS "childwrite_calls"
.PP
Number of record update calls\&. Record update calls are used to update a record under a transaction\&.
.SS "pending_childwrite_calls"
.PP
Number of record update calls currently active\&.
.SS "memory_used"
.PP
The amount of memory in bytes currently used by CTDB using talloc\&. This includes all the memory used for CTDB\*(Aqs internal data structures\&. This does not include the memory mapped TDB databases\&.
.SS "max_hop_count"
.PP
The maximum number of hops required for a record migration request to obtain the record\&. High numbers indicate record contention\&.
.SS "total_ro_delegations"
.PP
Number of readonly delegations created\&.
.SS "total_ro_revokes"
.PP
Number of readonly delegations that were revoked\&. The difference between total_ro_revokes and total_ro_delegations gives the number of currently active readonly delegations\&.
.SS "hop_count_buckets"
.PP
Distribution of migration requests based on hop counts values\&. Buckets are 0, <\ \&2, <\ \&4, <\ \&8, <\ \&16, <\ \&32, <\ \&64, <\ \&128, <\ \&256, <\ \&512, <\ \&1024, <\ \&2048, <\ \&4096, <\ \&8192, <\ \&16384, ≥\ \&16384\&.
.SS "lock_buckets"
.PP
Distribution of record lock requests based on time required to obtain locks\&. Buckets are <\ \&1ms, <\ \&10ms, <\ \&100ms, <\ \&1s, <\ \&2s, <\ \&4s, <\ \&8s, <\ \&16s, <\ \&32s, <\ \&64s, ≥\ \&64s\&.
.SS "locks_latency"
.PP
The minimum, the average and the maximum time (in seconds) required to obtain record locks\&.
.SS "reclock_ctdbd"
.PP
The minimum, the average and the maximum time (in seconds) required to check if recovery lock is still held by recovery daemon when recovery mode is changed\&. This check is done in ctdb daemon\&.
.SS "reclock_recd"
.PP
The minimum, the average and the maximum time (in seconds) required to check if recovery lock is still held by recovery daemon during recovery\&. This check is done in recovery daemon\&.
.SS "call_latency"
.PP
The minimum, the average and the maximum time (in seconds) required to process a REQ_CALL message from client\&. This includes the time required to migrate a record from remote node, if the record is not available on the local node\&.
.SS "childwrite_latency"
.PP
Default: 0
.PP
The minimum, the average and the maximum time (in seconds) required to update records under a transaction\&.
.SH "DATABASE STATISTICS"
.PP
CTDB maintains per database statistics about important operations\&. See the
\fBctdb\fR(1)
command
\fBdbstatistics\fR
for displaying database statistics\&.
.SS "Example: ctdb dbstatistics notify_index\&.tdb"
.sp
.if n \{\
.RS 4
.\}
.nf
DB Statistics: notify_index\&.tdb
ro_delegations 0
ro_revokes 0
locks
total 131
failed 0
current 0
pending 0
hop_count_buckets: 9890 5454 26 1 0 0 0 0 0 0 0 0 0 0 0 0
lock_buckets: 4 117 10 0 0 0 0 0 0 0 0 0 0 0 0 0
locks_latency MIN/AVG/MAX 0\&.000683/0\&.004198/0\&.014730 sec out of 131
Num Hot Keys: 3
Count:7 Key:2f636c75737465726673
Count:18 Key:2f636c757374657266732f64617461
Count:7 Key:2f636c757374657266732f646174612f636c69656e7473
.fi
.if n \{\
.RE
.\}
.SS "DB Statistics"
.PP
Name of the database\&.
.SS "ro_delegations"
.PP
Number of readonly delegations created in the database\&.
.SS "ro_revokes"
.PP
Number of readonly delegations revoked\&. The difference in ro_delegations and ro_revokes indicates the currently active readonly delegations\&.
.SS "locks"
.PP
This section lists locking statistics\&.
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBtotal\fR
.RS 4
.PP
Number of completed lock calls\&. This includes database locks and record locks\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBfailed\fR
.RS 4
.PP
Number of failed lock calls\&. This includes database locks and record locks\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBcurrent\fR
.RS 4
.PP
Number of scheduled lock calls\&. This includes database locks and record locks\&.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBpending\fR
.RS 4
.PP
Number of queued lock calls\&. This includes database locks and record locks\&.
.RE
.SS "hop_count_buckets"
.PP
Distribution of migration requests based on hop counts values\&. Buckets are 0, <\ \&2, <\ \&4, <\ \&8, <\ \&16, <\ \&32, <\ \&64, <\ \&128, <\ \&256, <\ \&512, <\ \&1024, <\ \&2048, <\ \&4096, <\ \&8192, <\ \&16384, ≥\ \&16384\&.
.SS "lock_buckets"
.PP
Distribution of record lock requests based on time required to obtain locks\&. Buckets are <\ \&1ms, <\ \&10ms, <\ \&100ms, <\ \&1s, <\ \&2s, <\ \&4s, <\ \&8s, <\ \&16s, <\ \&32s, <\ \&64s, ≥\ \&64s\&.
.SS "locks_latency"
.PP
The minimum, the average and the maximum time (in seconds) required to obtain record locks\&.
.SS "Num Hot Keys"
.PP
Number of contended records determined by hop count\&. CTDB keeps track of top 10 hot records and the output shows hex encoded keys for the hot records\&.
.SH "SEE ALSO"
.PP
\fBctdb\fR(1),
\fBctdbd\fR(1),
\fBctdb-tunables\fR(7),
\m[blue]\fB\%http://ctdb.samba.org/\fR\m[]
.SH "AUTHOR"
.br
.PP
This documentation was written by Amitay Isaacs, Martin Schwenke
.SH "COPYRIGHT"
.br
Copyright \(co 2007 Andrew Tridgell, Ronnie Sahlberg
.br
.PP
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version\&.
.PP
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE\&. See the GNU General Public License for more details\&.
.PP
You should have received a copy of the GNU General Public License along with this program; if not, see
\m[blue]\fB\%http://www.gnu.org/licenses\fR\m[]\&.
.sp