From 96da3bc6a06e181e404de3b880b40e2fb1179c8f Mon Sep 17 00:00:00 2001 From: GoEdgeLab Date: Sat, 26 Nov 2022 15:54:16 +0800 Subject: [PATCH] =?UTF-8?q?=E5=81=A5=E5=BA=B7=E6=A3=80=E6=9F=A5=E6=B2=A1?= =?UTF-8?q?=E6=9C=89=E5=BC=80=E5=90=AF=E4=B8=8A=E4=B8=8B=E7=BA=BF=E7=9A=84?= =?UTF-8?q?=E6=97=B6=E5=80=99=E4=B9=9F=E5=8F=91=E9=80=81=E8=8A=82=E7=82=B9?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E5=8F=98=E6=9B=B4=E9=80=9A=E7=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/const/const.go | 2 +- internal/tasks/health_check_executor.go | 24 ++++++++++++++++++++++-- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/internal/const/const.go b/internal/const/const.go index 10f6f2af..8107cb7d 100644 --- a/internal/const/const.go +++ b/internal/const/const.go @@ -21,5 +21,5 @@ const ( NodeVersion = "0.5.8" // SQLVersion SQL版本号 - SQLVersion = "3" + SQLVersion = "4" ) diff --git a/internal/tasks/health_check_executor.go b/internal/tasks/health_check_executor.go index 90e36ff0..91e48d73 100644 --- a/internal/tasks/health_check_executor.go +++ b/internal/tasks/health_check_executor.go @@ -198,8 +198,10 @@ func (this *HealthCheckExecutor) runNode(healthCheckConfig *serverconfigs.Health } } - // 我们只处理IP的上下线,不修改节点的状态 - return + // 结束处理 ,因为我们只处理IP的上下线,不修改节点的状态 + if healthCheckConfig.AutoDown { + return + } } // 修改节点状态 @@ -216,6 +218,24 @@ func (this *HealthCheckExecutor) runNode(healthCheckConfig *serverconfigs.Health message := "健康检查失败,节点\"" + result.Node.Name + "\"已自动下线" err = models.NewMessageDAO().CreateNodeMessage(nil, nodeconfigs.NodeRoleNode, this.clusterId, int64(result.Node.Id), models.MessageTypeHealthCheckNodeDown, models.MessageLevelError, message, message, nil, false) } + if err != nil { + this.logErr("HealthCheckExecutor", err.Error()) + return + } + } + } else { + // 通知健康检查结果 + var err error + if result.IsOk { + message := "节点\"" + result.Node.Name + "\"健康检查成功" + err = models.NewMessageDAO().CreateNodeMessage(nil, nodeconfigs.NodeRoleNode, this.clusterId, int64(result.Node.Id), models.MessageTypeHealthCheckNodeUp, models.MessageLevelSuccess, message, message, nil, false) + } else { + message := "节点\"" + result.Node.Name + "\"健康检查失败" + err = models.NewMessageDAO().CreateNodeMessage(nil, nodeconfigs.NodeRoleNode, this.clusterId, int64(result.Node.Id), models.MessageTypeHealthCheckNodeDown, models.MessageLevelError, message, message, nil, false) + } + if err != nil { + this.logErr("HealthCheckExecutor", err.Error()) + return } } }