package broker import ( "github.com/gin-gonic/gin" ) func InitHTTPMoniter(b *Broker) { gin.SetMode(gin.ReleaseMode) router := gin.Default() router.DELETE("api/v1/connections/:clientid", func(c *gin.Context) { clientid := c.Param("clientid") cli, ok := b.clients.Load(clientid) if ok { conn, succss := cli.(*client) if succss { conn.Close() } } resp := map[string]int{ "code": 0, } c.JSON(200, &resp) }) router.GET("api/v1/connections", func(c *gin.Context) { num := 0 b.clients.Range(func(key, value interface{}) bool { num++ return true }) resp := map[string]int{ "code": 0, "counts": num, } c.JSON(200, &resp) }) router.GET("api/v1/nodes", func(c *gin.Context) { num := 0 b.clients.Range(func(key, value interface{}) bool { num++ return true }) resp := map[string]int{ "code": 0, "counts": num, } c.JSON(200, &resp) }) router.Run(":8080") }