You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
package shell
import ( "context" "fmt" "github.com/seaweedfs/seaweedfs/weed/mq/balancer" "github.com/seaweedfs/seaweedfs/weed/pb/filer_pb" "io" )
func init() { Commands = append(Commands, &commandMqTopicList{}) }
type commandMqTopicList struct { }
func (c *commandMqTopicList) Name() string { return "mq.topic.list" }
func (c *commandMqTopicList) Help() string { return `print out all topics` }
func (c *commandMqTopicList) Do(args []string, commandEnv *CommandEnv, writer io.Writer) error {
brokerBalancer, err := findBrokerBalancer(commandEnv) if err != nil { return err }
//pb.WithBrokerGrpcClient(false, brokerBalancer, commandEnv.option.GrpcDialOption, func(client pb.SeaweedMessagingClient) error {
// resp, err := client.ListTopics(context.Background(), &pb.ListTopicsRequest{})
// if err != nil {
// return err
// }
// for _, topic := range resp.Topics {
// fmt.Fprintf(writer, "%s\n", topic)
// }
// return nil
//})
fmt.Fprintf(writer, "current balancer: %s\n", brokerBalancer)
return nil }
func findBrokerBalancer(commandEnv *CommandEnv) (brokerBalancer string, err error) { err = commandEnv.WithFilerClient(false, func(client filer_pb.SeaweedFilerClient) error { resp, err := client.FindLockOwner(context.Background(), &filer_pb.FindLockOwnerRequest{ Name: balancer.LockBrokerBalancer, }) if err != nil { return err } brokerBalancer = resp.Owner return nil }) return }
|