From 25ae94fda987d97b79b5cae23bb3d1256a1a188e Mon Sep 17 00:00:00 2001 From: Yingxin Date: Tue, 25 Dec 2018 14:02:56 +0800 Subject: [PATCH] crimson/net: add logic_name to indicate the msgr role for debugging Signed-off-by: Yingxin --- src/crimson/net/SocketMessenger.cc | 5 +++-- src/crimson/net/SocketMessenger.h | 8 ++++++-- src/test/crimson/test_alien_echo.cc | 4 ++-- src/test/crimson/test_messenger.cc | 8 ++++---- src/test/crimson/test_monc.cc | 2 +- 5 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/crimson/net/SocketMessenger.cc b/src/crimson/net/SocketMessenger.cc index 75c2870f3f8ce..6e23f9d62865d 100644 --- a/src/crimson/net/SocketMessenger.cc +++ b/src/crimson/net/SocketMessenger.cc @@ -22,8 +22,9 @@ using namespace ceph::net; -SocketMessenger::SocketMessenger(const entity_name_t& myname) - : Messenger{myname} +SocketMessenger::SocketMessenger(const entity_name_t& myname, + const std::string& logic_name) + : Messenger{myname}, logic_name{logic_name} {} void SocketMessenger::bind(const entity_addr_t& addr) diff --git a/src/crimson/net/SocketMessenger.h b/src/crimson/net/SocketMessenger.h index 06941fba96435..c71443112c125 100644 --- a/src/crimson/net/SocketMessenger.h +++ b/src/crimson/net/SocketMessenger.h @@ -36,12 +36,15 @@ class SocketMessenger final : public Messenger { std::set accepting_conns; using Throttle = ceph::thread::Throttle; ceph::net::PolicySet policy_set; + // Distinguish messengers with meaningful names for debugging + const std::string logic_name; seastar::future<> accept(seastar::connected_socket socket, seastar::socket_address paddr); public: - SocketMessenger(const entity_name_t& myname); + SocketMessenger(const entity_name_t& myname, + const std::string& logic_name); void bind(const entity_addr_t& addr) override; @@ -54,7 +57,8 @@ class SocketMessenger final : public Messenger { void print(ostream& out) const override { out << get_myname() - << " " << get_myaddr(); + << "(" << logic_name + << ") " << get_myaddr(); } public: diff --git a/src/test/crimson/test_alien_echo.cc b/src/test/crimson/test_alien_echo.cc index 51e009145c70c..78ef81d306797 100644 --- a/src/test/crimson/test_alien_echo.cc +++ b/src/test/crimson/test_alien_echo.cc @@ -39,7 +39,7 @@ struct DummyAuthAuthorizer : public AuthAuthorizer { struct Server { ceph::thread::Throttle byte_throttler; static constexpr int64_t server_num = 0; - ceph::net::SocketMessenger msgr{entity_name_t::OSD(server_num)}; + ceph::net::SocketMessenger msgr{entity_name_t::OSD(server_num), "server"}; struct ServerDispatcher : ceph::net::Dispatcher { unsigned count = 0; seastar::condition_variable on_reply; @@ -76,7 +76,7 @@ struct Server { struct Client { ceph::thread::Throttle byte_throttler; static constexpr int64_t client_num = 1; - ceph::net::SocketMessenger msgr{entity_name_t::OSD(client_num)}; + ceph::net::SocketMessenger msgr{entity_name_t::OSD(client_num), "client"}; struct ClientDispatcher : ceph::net::Dispatcher { unsigned count = 0; seastar::condition_variable on_reply; diff --git a/src/test/crimson/test_messenger.cc b/src/test/crimson/test_messenger.cc index c16434113e221..a2e19d4b79d0a 100644 --- a/src/test/crimson/test_messenger.cc +++ b/src/test/crimson/test_messenger.cc @@ -22,7 +22,7 @@ static seastar::future<> test_echo(unsigned rounds, entity_addr_t addr; struct { - ceph::net::SocketMessenger messenger{entity_name_t::OSD(1)}; + ceph::net::SocketMessenger messenger{entity_name_t::OSD(1), "server1"}; struct ServerDispatcher : ceph::net::Dispatcher { seastar::future<> ms_dispatch(ceph::net::ConnectionRef c, MessageRef m) override { @@ -38,7 +38,7 @@ static seastar::future<> test_echo(unsigned rounds, struct { unsigned rounds; std::bernoulli_distribution keepalive_dist{}; - ceph::net::SocketMessenger messenger{entity_name_t::OSD(0)}; + ceph::net::SocketMessenger messenger{entity_name_t::OSD(0), "client1"}; struct ClientDispatcher : ceph::net::Dispatcher { seastar::promise reply; unsigned count = 0u; @@ -127,7 +127,7 @@ static seastar::future<> test_concurrent_dispatch() entity_addr_t addr; struct { - ceph::net::SocketMessenger messenger{entity_name_t::OSD(1)}; + ceph::net::SocketMessenger messenger{entity_name_t::OSD(1), "server2"}; class ServerDispatcher : public ceph::net::Dispatcher { int count = 0; seastar::promise<> on_second; // satisfied on second dispatch @@ -151,7 +151,7 @@ static seastar::future<> test_concurrent_dispatch() } server; struct { - ceph::net::SocketMessenger messenger{entity_name_t::OSD(0)}; + ceph::net::SocketMessenger messenger{entity_name_t::OSD(0), "client2"}; ceph::net::Dispatcher dispatcher; } client; }; diff --git a/src/test/crimson/test_monc.cc b/src/test/crimson/test_monc.cc index a2b76421f1f65..d90d7905f7311 100644 --- a/src/test/crimson/test_monc.cc +++ b/src/test/crimson/test_monc.cc @@ -23,7 +23,7 @@ static seastar::future<> test_monc() conf->cluster = cluster; return conf.parse_config_files(conf_file_list); }).then([] { - return seastar::do_with(ceph::net::SocketMessenger{entity_name_t::OSD(0)}, + return seastar::do_with(ceph::net::SocketMessenger{entity_name_t::OSD(0), "monc"}, [](ceph::net::Messenger& msgr) { auto& conf = ceph::common::local_conf(); if (conf->ms_crc_data) { -- 2.39.5