summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2022-04-10 18:14:55 +0800
committerruki <[email protected]>2022-04-10 18:14:55 +0800
commit12e69c85c7be7f5a7f4a847ba826323240a35f3e (patch)
tree49e7328dd749928afda686b818b827e570909ae0
parent4e0fdeb3faed8921b659cbd6e12cb67acbbf8007 (diff)
improve to send ping
-rw-r--r--xmake/modules/private/service/connect_service.lua8
-rw-r--r--xmake/modules/private/service/server/remote_build_server.lua7
2 files changed, 10 insertions, 5 deletions
diff --git a/xmake/modules/private/service/connect_service.lua b/xmake/modules/private/service/connect_service.lua
index 9509b3aab..2b9e73a42 100644
--- a/xmake/modules/private/service/connect_service.lua
+++ b/xmake/modules/private/service/connect_service.lua
@@ -46,16 +46,20 @@ function _connect(addr, port)
local client = remote_build_client()
local statusfile = client:statusfile()
local sock = socket.connect(addr, port)
+ local connected = false
print("%s: connect %s:%d ..", client, addr, port)
if sock then
- print("%s: connected!", client)
local stream = socket_stream(sock)
if stream:send_msg(message.new_ping()) and stream:flush() then
local msg = stream:recv_msg()
if msg then
- msg:dump()
+ vprint(msg:body())
+ connected = true
end
end
+ end
+ if connected then
+ print("%s: connected!", client)
io.save(statusfile, {addr = addr, port = port})
else
print("%s: connect %s:%d failed", client, addr, port)
diff --git a/xmake/modules/private/service/server/remote_build_server.lua b/xmake/modules/private/service/server/remote_build_server.lua
index 678c38265..00f051a4d 100644
--- a/xmake/modules/private/service/server/remote_build_server.lua
+++ b/xmake/modules/private/service/server/remote_build_server.lua
@@ -41,13 +41,14 @@ end
-- handle ping message
function remote_build_server:handle_ping(stream, msg)
- if stream:send_msg(message.new_ping()) and stream:flush() then
- print("send ok")
- end
+ local ok = stream:send_msg(message.new_ping()) and stream:flush()
+ vprint("%s: %s send %s", self, stream:sock(), ok and "ok" or "failed")
end
-- on handle message
function remote_build_server:on_handle(stream, msg)
+ vprint("%s: %s on handle message(%d)", self, stream:sock(), msg:code())
+ vprint(msg:body())
if msg:is_ping() then
self:handle_ping(stream, msg)
end