zhangzengfei
2023-10-20 cc6d3763795b62d353df0c1eb58cbb736b709829
system-service/controllers/cluster.go
@@ -1,6 +1,7 @@
package controllers
import (
   "vamicro/config"
   "vamicro/system-service/models"
   "vamicro/system-service/service"
   "vamicro/system-service/vo"
@@ -11,6 +12,49 @@
)
type ClusterController struct {
}
// @Summary 查询当前集群状态
// @Description 查询本地集群
// @Produce json
// @Tags cluster
// @Success 200 {string} json "{"code":200, success:true, msg:"", data:""}"
// @Failure 500 {string} json "{"code":500, success:false, msg:"",data:""}"
// @Router /data/api-v/cluster/status [get]
func (cc ClusterController) GetClusterStat(h *bhomeclient.WrapperHandler, c *bhomeclient.Request) *bhomeclient.Reply {
   var clusterE models.Cluster
   var reply = bhomeclient.Reply{
      Success: false,
      Msg:     "",
      Data:    nil,
   }
   arr, err := clusterE.FindAll()
   if err == nil {
      if arr != nil && len(arr) > 0 {
         // 表示已加入集群
         reply.Success = true
         var nodeE models.Node
         nodes, _ := nodeE.FindNodesByClusterId(arr[0].ClusterId)
         //logger.Debug("查询集群节点:", nodes)
         for _, node := range nodes {
            //logger.Debug("节点:", node.NodeId, " serverId:", config.Server.AnalyServerId, " stat:", node.DriftState)
            if node.NodeId == config.Server.AnalyServerId {
               if node.DriftState == "master" {
                  reply.Msg = "master"
               } else {
                  reply.Msg = "slave"
               }
               break
            }
         }
         reply.Data = nodes
      }
   }
   return &reply
}
// @Summary 查询本地集群
@@ -27,7 +71,7 @@
      if arr != nil && len(arr) > 0 {
         var nodeE models.Node
         nodes, _ := nodeE.FindNodesByClusterId(arr[0].ClusterId)
         logger.Debugf("FindCluster nodes=%v", nodes)
         //logger.Debugf("FindCluster nodes=%v", nodes)
         return &bhomeclient.Reply{Success: true, Data: map[string]interface{}{
            "clusterId":   arr[0].ClusterId,
            "clusterName": arr[0].ClusterName,