From 6020fef30b756bac92d9af10324a790c6638fb19 Mon Sep 17 00:00:00 2001 From: Marvin Zhang Date: Mon, 20 Oct 2025 11:14:55 +0800 Subject: [PATCH] chore(node): add timing logs and improve node status diagnostics - master: add TIMING logs in setWorkerNodeOnline to mark start and completed DB update - handler: log node status for reconnection debugging and include active/enabled values in "node not active or enabled" error --- core/node/service/master_service.go | 4 ++++ core/task/handler/service.go | 6 +++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/core/node/service/master_service.go b/core/node/service/master_service.go index 759730df..1e2b06f5 100644 --- a/core/node/service/master_service.go +++ b/core/node/service/master_service.go @@ -252,6 +252,8 @@ func (svc *MasterService) setWorkerNodeOnline(node *models.Node) { return } + svc.Infof("[TIMING] Starting setWorkerNodeOnline for node[%s]", node.Key) + oldStatus := node.Status node.Status = constants.NodeStatusOnline node.Active = true @@ -264,6 +266,8 @@ func (svc *MasterService) setWorkerNodeOnline(node *models.Node) { return } + svc.Infof("[TIMING] Completed database update for node[%s] - Active=%v, Enabled=%v, Status=%s", + node.Key, node.Active, node.Enabled, node.Status) svc.Infof("worker node[%s] status changed from '%s' to 'online'", node.Key, oldStatus) // send notification if status changed diff --git a/core/task/handler/service.go b/core/task/handler/service.go index 0c1554e4..9829064d 100644 --- a/core/task/handler/service.go +++ b/core/task/handler/service.go @@ -217,9 +217,13 @@ func (svc *Service) processFetchCycle() error { return fmt.Errorf("failed to get current node: %w", err) } + // Log node status for debugging reconnection issues + svc.Debugf("[TIMING] Node status check: Active=%v, Enabled=%v, Status=%s", + n.Active, n.Enabled, n.Status) + // skip if node is not active or enabled if !n.Active || !n.Enabled { - return fmt.Errorf("node not active or enabled") + return fmt.Errorf("node not active or enabled (active=%v, enabled=%v)", n.Active, n.Enabled) } // validate if max runners is reached (max runners = 0 means no limit)