Bladeren bron

优化日志打印

johnclot69 6 dagen geleden
bovenliggende
commit
ac878bf4c1
3 gewijzigde bestanden met toevoegingen van 16 en 15 verwijderingen
  1. 2 2
      src/common/ChannelPipeline.h
  2. 6 5
      src/common/WebsocketServer.cpp
  3. 8 8
      src/common/WebsocketSession.h

+ 2 - 2
src/common/ChannelPipeline.h

@@ -23,7 +23,7 @@ public:
             try {
                 handler->handle(session, msg);
             } catch (const std::exception& e) {
-                spdlog::error("[Pipeline] Handler '{}' error: {}", name, e.what());
+                spdlog::error("Pipeline - Handler '{}' error: {}", name, e.what());
                 // 发生错误时可选择中断或继续处理
                 break;
             }
@@ -36,7 +36,7 @@ public:
             try {
                 handler->channelInactive(session);
             } catch (const std::exception& e) {
-                spdlog::error("[Pipeline] Handler '{}' channelInactive: {}", name, e.what());
+                spdlog::error("Pipeline - Handler '{}' channelInactive: {}", name, e.what());
             }
         }
     }

+ 6 - 5
src/common/WebsocketServer.cpp

@@ -33,8 +33,9 @@ void WebsocketServer::start() {
     // 开始接受连接
     asio::post(boss_context_, [this] { doAccept(); });
 
-    spdlog::info("[Server] Started on {} with {} threads.",
+    spdlog::info("WebsocketServer Started on {}:{} with {} threads.",
         acceptor_.local_endpoint().address().to_string(),
+        acceptor_.local_endpoint().port(),
         worker_pool_.size() + 1);
 }
 
@@ -59,7 +60,7 @@ void WebsocketServer::stop() {
     for (auto& t : boss_threads_) {
         if (t.joinable()) t.join();
     }
-    spdlog::info("[Server] Stopped.");
+    spdlog::info("WebsocketServer Stopped.");
 }
 
 void WebsocketServer::broadcast(const Message& msg) const
@@ -84,12 +85,12 @@ void WebsocketServer::doAccept() {
     acceptor_.async_accept(
         [this](boost::system::error_code ec, tcp::socket socket) {
             if (!ec) {
-                spdlog::info("[Server] New connection accepted");
+                spdlog::info("WebsocketServer New connection accepted");
                 // 设置 Socket 选项
                 setupSocketOptions(socket);
                 // 将新连接的 socket 移交给 worker_context_
                 worker_pool_.post([this, s = std::move(socket)]() mutable {
-                    spdlog::info("[Worker] New session lambda executed");
+                    spdlog::info("Worker New session lambda executed");
 
                     auto session = std::make_shared<WebsocketSession>(std::move(s));
 
@@ -112,7 +113,7 @@ void WebsocketServer::doAccept() {
                 // 继续接受新连接
                 doAccept();
             } else if (ec != asio::error::operation_aborted) {
-                spdlog::error("[Server] Accept error: {}", ec.message());
+                spdlog::error("WebsocketServer Accept error: {}", ec.message());
 
                 // 防止高频错误导致CPU占用过高,使用 `steady_timer` 延迟重新监听
                 auto timer = std::make_shared<asio::steady_timer>(boss_context_, std::chrono::milliseconds(100));

+ 8 - 8
src/common/WebsocketSession.h

@@ -43,7 +43,7 @@ public:
                                 if (!ec) {
                                     self->doRead();
                                 } else {
-                                    spdlog::error("[WebsocketSession] Handshake error: {}", ec.message());
+                                    spdlog::error("WebsocketSession - Handshake error: {}", ec.message());
                                     self->close();
                                 }
                             });
@@ -59,7 +59,7 @@ public:
                             });
                     }
                 } else {
-                    spdlog::error("[WebsocketSession] Handshake HTTP read error: {}", ec.message());
+                    spdlog::error("WebsocketSession - Handshake HTTP read error: {}", ec.message());
                     self->close();
                 }
             });
@@ -86,9 +86,9 @@ public:
             ws_.async_close(reason,
                 [self = shared_from_this()](beast::error_code ec) {
                     if (ec) {
-                        spdlog::error("[WebsocketSession] Close error: {}", ec.message());
+                        spdlog::error("WebsocketSession - Close error: {}", ec.message());
                     } else {
-                        spdlog::info("[WebsocketSession] Connection closed gracefully.");
+                        spdlog::info("WebsocketSession - Connection closed gracefully.");
                     }
                     // 通知上层管理:连接关闭事件
                     if (self->onClose) {
@@ -97,7 +97,7 @@ public:
                 }
             );
         } else {
-            spdlog::info("[WebsocketSession] WebSocket is already closed.");
+            spdlog::info("WebsocketSession - WebSocket is already closed.");
             // 如果已经关闭,也调用回调通知上层
             if (onClose) {
                 onClose(shared_from_this());
@@ -132,12 +132,12 @@ private:
                             pipeline_->process(self, msg);
                         }
                     } catch (const std::exception& e) {
-                        spdlog::error("[WebsocketSession] Unpack error: {}", e.what());
+                        spdlog::error("WebsocketSession - Unpack error: {}", e.what());
                     }
                     buffer_.consume(bytes_transferred);
                     doRead();
                 } else {
-                    spdlog::error("[WebsocketSession] Read error: {}", ec.message());
+                    spdlog::error("WebsocketSession - Read error: {}", ec.message());
                     close();
                 }
             });
@@ -166,7 +166,7 @@ private:
                     if (!ec) {
                         self->doWrite();  // 继续发送队列中的下一个数据
                     } else {
-                        spdlog::error("[WebsocketSession] Write error: {}", ec.message());
+                        spdlog::error("WebsocketSession - Write error: {}", ec.message());
                         self->writing_ = false;
                     }
                 }