Mercurial > dovecot > core-2.2
changeset 22680:21e9717ba702
director: DIRECTOR-LIST - Show number of USERs sent/received in "handshaking" state
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Sun, 26 Nov 2017 12:19:36 +0200 |
parents | 496ac7e7563f |
children | 592564b39e03 |
files | src/director/director-connection.c src/director/director-connection.h src/director/doveadm-connection.c |
diffstat | 3 files changed, 13 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/director/director-connection.c Sun Nov 26 12:13:35 2017 +0200 +++ b/src/director/director-connection.c Sun Nov 26 12:19:36 2017 +0200 @@ -2584,4 +2584,6 @@ status_r->last_input = conn->last_input; status_r->last_output = conn->last_output; status_r->last_ping_msecs = conn->last_ping_msecs; + status_r->handshake_users_sent = conn->handshake_users_sent; + status_r->handshake_users_received = conn->handshake_users_received; }
--- a/src/director/director-connection.h Sun Nov 26 12:13:35 2017 +0200 +++ b/src/director/director-connection.h Sun Nov 26 12:19:36 2017 +0200 @@ -6,6 +6,9 @@ size_t bytes_buffered, peak_bytes_buffered; struct timeval last_input, last_output; unsigned int last_ping_msecs; + + unsigned int handshake_users_received; + unsigned int handshake_users_sent; }; struct director_host;
--- a/src/director/doveadm-connection.c Sun Nov 26 12:13:35 2017 +0200 +++ b/src/director/doveadm-connection.c Sun Nov 26 12:19:36 2017 +0200 @@ -189,14 +189,18 @@ { struct director_connection_status status; - if (!director_connection_is_handshaked(conn)) - str_append(str, "handshaking"); - else if (director_connection_is_synced(conn)) + director_connection_get_status(conn, &status); + if (!director_connection_is_handshaked(conn)) { + str_append(str, "handshaking - "); + if (director_connection_is_incoming(conn)) + str_printfa(str, "%u USERs received", status.handshake_users_received); + else + str_printfa(str, "%u USERs sent", status.handshake_users_sent); + } else if (director_connection_is_synced(conn)) str_append(str, "synced"); else str_append(str, "syncing"); - director_connection_get_status(conn, &status); str_printfa(str, "\t%u\t%"PRIuUOFF_T"\t%"PRIuUOFF_T"\t%zu\t%zu\t" "%ld\t%ld", status.last_ping_msecs, status.bytes_read, status.bytes_sent,