mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2024-01-19 02:48:24 +00:00
add back "/cluster/status"
fix https://github.com/chrislusf/seaweedfs/issues/870
This commit is contained in:
parent
e71e0db5b7
commit
4773497d2c
|
@ -97,6 +97,7 @@ func runMaster(cmd *Command, args []string) bool {
|
||||||
raftServer := weed_server.NewRaftServer(security.LoadClientTLS(viper.Sub("grpc"), "master"),
|
raftServer := weed_server.NewRaftServer(security.LoadClientTLS(viper.Sub("grpc"), "master"),
|
||||||
peers, myMasterAddress, *metaFolder, ms.Topo, *mpulse)
|
peers, myMasterAddress, *metaFolder, ms.Topo, *mpulse)
|
||||||
ms.SetRaftServer(raftServer)
|
ms.SetRaftServer(raftServer)
|
||||||
|
r.HandleFunc("/cluster/status", raftServer.StatusHandler).Methods("GET")
|
||||||
|
|
||||||
// starting grpc server
|
// starting grpc server
|
||||||
grpcPort := *mport + 10000
|
grpcPort := *mport + 10000
|
||||||
|
|
|
@ -187,6 +187,7 @@ func runServer(cmd *Command, args []string) bool {
|
||||||
raftServer := weed_server.NewRaftServer(security.LoadClientTLS(viper.Sub("grpc"), "master"),
|
raftServer := weed_server.NewRaftServer(security.LoadClientTLS(viper.Sub("grpc"), "master"),
|
||||||
peers, myMasterAddress, *masterMetaFolder, ms.Topo, *pulseSeconds)
|
peers, myMasterAddress, *masterMetaFolder, ms.Topo, *pulseSeconds)
|
||||||
ms.SetRaftServer(raftServer)
|
ms.SetRaftServer(raftServer)
|
||||||
|
r.HandleFunc("/cluster/status", raftServer.StatusHandler).Methods("GET")
|
||||||
|
|
||||||
// starting grpc server
|
// starting grpc server
|
||||||
grpcPort := *masterPort + 10000
|
grpcPort := *masterPort + 10000
|
||||||
|
|
22
weed/server/raft_server_handlers.go
Normal file
22
weed/server/raft_server_handlers.go
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
package weed_server
|
||||||
|
|
||||||
|
import (
|
||||||
|
"net/http"
|
||||||
|
)
|
||||||
|
|
||||||
|
type ClusterStatusResult struct {
|
||||||
|
IsLeader bool `json:"IsLeader,omitempty"`
|
||||||
|
Leader string `json:"Leader,omitempty"`
|
||||||
|
Peers []string `json:"Peers,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s *RaftServer) StatusHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
|
ret := ClusterStatusResult{
|
||||||
|
IsLeader: s.topo.IsLeader(),
|
||||||
|
Peers: s.Peers(),
|
||||||
|
}
|
||||||
|
if leader, e := s.topo.Leader(); e == nil {
|
||||||
|
ret.Leader = leader
|
||||||
|
}
|
||||||
|
writeJsonQuiet(w, r, http.StatusOK, ret)
|
||||||
|
}
|
Loading…
Reference in a new issue