]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/net: add logic_name to indicate the msgr role for debugging
authorYingxin <yingxin.cheng@intel.com>
Tue, 25 Dec 2018 06:02:56 +0000 (14:02 +0800)
committerYingxin <yingxincheng@gmail.com>
Thu, 3 Jan 2019 07:46:32 +0000 (15:46 +0800)
Signed-off-by: Yingxin <yingxin.cheng@intel.com>
src/crimson/net/SocketMessenger.cc
src/crimson/net/SocketMessenger.h
src/test/crimson/test_alien_echo.cc
src/test/crimson/test_messenger.cc
src/test/crimson/test_monc.cc

index 75c2870f3f8cec47a5ff5236af7105adb5d4c5c5..6e23f9d62865d48e860094bb6d0aa83c2286a4f4 100644 (file)
@@ -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)
index 06941fba96435a606f6b4594208b8d8985426ca4..c71443112c1252add4639e5662b2355e224cf8de 100644 (file)
@@ -36,12 +36,15 @@ class SocketMessenger final : public Messenger {
   std::set<SocketConnectionRef> accepting_conns;
   using Throttle = ceph::thread::Throttle;
   ceph::net::PolicySet<Throttle> 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:
index 51e009145c70cba6c8ecd709940a5cb5ab484196..78ef81d3067972a2d4b2a21ad6a1bbe7105692b1 100644 (file)
@@ -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;
index c16434113e221aadac536365e6f4815183b56955..a2e19d4b79d0a1e9d52aaf405a0547ab20789818 100644 (file)
@@ -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<MessageRef> 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;
   };
index a2b76421f1f65a15d824bb901a26f5a2d2c38f59..d90d7905f73116201b626e653493b73d0fe1a5aa 100644 (file)
@@ -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) {