cli: add transport protcol column to -netinfo

This commit is contained in:
Martin Zumsande 2023-12-11 16:52:31 -05:00
parent 9eed22e870
commit fb5bfed26a

View File

@ -406,6 +406,7 @@ private:
std::string conn_type; std::string conn_type;
std::string network; std::string network;
std::string age; std::string age;
std::string transport_protocol_type;
double min_ping; double min_ping;
double ping; double ping;
int64_t addr_processed; int64_t addr_processed;
@ -517,10 +518,11 @@ public:
const std::string addr{peer["addr"].get_str()}; const std::string addr{peer["addr"].get_str()};
const std::string age{conn_time == 0 ? "" : ToString((time_now - conn_time) / 60)}; const std::string age{conn_time == 0 ? "" : ToString((time_now - conn_time) / 60)};
const std::string sub_version{peer["subver"].get_str()}; const std::string sub_version{peer["subver"].get_str()};
const std::string transport{peer["transport_protocol_type"].get_str()};
const bool is_addr_relay_enabled{peer["addr_relay_enabled"].isNull() ? false : peer["addr_relay_enabled"].get_bool()}; const bool is_addr_relay_enabled{peer["addr_relay_enabled"].isNull() ? false : peer["addr_relay_enabled"].get_bool()};
const bool is_bip152_hb_from{peer["bip152_hb_from"].get_bool()}; const bool is_bip152_hb_from{peer["bip152_hb_from"].get_bool()};
const bool is_bip152_hb_to{peer["bip152_hb_to"].get_bool()}; const bool is_bip152_hb_to{peer["bip152_hb_to"].get_bool()};
m_peers.push_back({addr, sub_version, conn_type, NETWORK_SHORT_NAMES[network_id], age, min_ping, ping, addr_processed, addr_rate_limited, last_blck, last_recv, last_send, last_trxn, peer_id, mapped_as, version, is_addr_relay_enabled, is_bip152_hb_from, is_bip152_hb_to, is_outbound, is_tx_relay}); m_peers.push_back({addr, sub_version, conn_type, NETWORK_SHORT_NAMES[network_id], age, transport, min_ping, ping, addr_processed, addr_rate_limited, last_blck, last_recv, last_send, last_trxn, peer_id, mapped_as, version, is_addr_relay_enabled, is_bip152_hb_from, is_bip152_hb_to, is_outbound, is_tx_relay});
m_max_addr_length = std::max(addr.length() + 1, m_max_addr_length); m_max_addr_length = std::max(addr.length() + 1, m_max_addr_length);
m_max_addr_processed_length = std::max(ToString(addr_processed).length(), m_max_addr_processed_length); m_max_addr_processed_length = std::max(ToString(addr_processed).length(), m_max_addr_processed_length);
m_max_addr_rate_limited_length = std::max(ToString(addr_rate_limited).length(), m_max_addr_rate_limited_length); m_max_addr_rate_limited_length = std::max(ToString(addr_rate_limited).length(), m_max_addr_rate_limited_length);
@ -536,7 +538,7 @@ public:
// Report detailed peer connections list sorted by direction and minimum ping time. // Report detailed peer connections list sorted by direction and minimum ping time.
if (DetailsRequested() && !m_peers.empty()) { if (DetailsRequested() && !m_peers.empty()) {
std::sort(m_peers.begin(), m_peers.end()); std::sort(m_peers.begin(), m_peers.end());
result += strprintf("<-> type net mping ping send recv txn blk hb %*s%*s%*s ", result += strprintf("<-> type net tp mping ping send recv txn blk hb %*s%*s%*s ",
m_max_addr_processed_length, "addrp", m_max_addr_processed_length, "addrp",
m_max_addr_rate_limited_length, "addrl", m_max_addr_rate_limited_length, "addrl",
m_max_age_length, "age"); m_max_age_length, "age");
@ -545,10 +547,11 @@ public:
for (const Peer& peer : m_peers) { for (const Peer& peer : m_peers) {
std::string version{ToString(peer.version) + peer.sub_version}; std::string version{ToString(peer.version) + peer.sub_version};
result += strprintf( result += strprintf(
"%3s %6s %5s%7s%7s%5s%5s%5s%5s %2s %*s%*s%*s%*i %*s %-*s%s\n", "%3s %6s %5s %2s%7s%7s%5s%5s%5s%5s %2s %*s%*s%*s%*i %*s %-*s%s\n",
peer.is_outbound ? "out" : "in", peer.is_outbound ? "out" : "in",
ConnectionTypeForNetinfo(peer.conn_type), ConnectionTypeForNetinfo(peer.conn_type),
peer.network, peer.network,
peer.transport_protocol_type == "detecting" ? "*" : peer.transport_protocol_type,
PingTimeToString(peer.min_ping), PingTimeToString(peer.min_ping),
PingTimeToString(peer.ping), PingTimeToString(peer.ping),
peer.last_send ? ToString(time_now - peer.last_send) : "", peer.last_send ? ToString(time_now - peer.last_send) : "",
@ -658,6 +661,7 @@ public:
" \"feeler\" - short-lived connection for testing addresses\n" " \"feeler\" - short-lived connection for testing addresses\n"
" \"addr\" - address fetch; short-lived connection for requesting addresses\n" " \"addr\" - address fetch; short-lived connection for requesting addresses\n"
" net Network the peer connected through (\"ipv4\", \"ipv6\", \"onion\", \"i2p\", \"cjdns\", or \"npr\" (not publicly routable))\n" " net Network the peer connected through (\"ipv4\", \"ipv6\", \"onion\", \"i2p\", \"cjdns\", or \"npr\" (not publicly routable))\n"
" tp Transport protocol used for the connection (\"v1\", \"v2\" or \"*\" if detecting)\n"
" mping Minimum observed ping time, in milliseconds (ms)\n" " mping Minimum observed ping time, in milliseconds (ms)\n"
" ping Last observed ping time, in milliseconds (ms)\n" " ping Last observed ping time, in milliseconds (ms)\n"
" send Time since last message sent to the peer, in seconds\n" " send Time since last message sent to the peer, in seconds\n"