| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 | package analyticimport (	"github.com/0xJacky/Nginx-UI/internal/analytic"	"github.com/0xJacky/Nginx-UI/internal/helper"	"github.com/gin-gonic/gin"	"github.com/gorilla/websocket"	"github.com/uozi-tech/cosy/logger"	"net/http"	"time")func GetNodeStat(c *gin.Context) {	var upGrader = websocket.Upgrader{		CheckOrigin: func(r *http.Request) bool {			return true		},	}	// upgrade http to websocket	ws, err := upGrader.Upgrade(c.Writer, c.Request, nil)	if err != nil {		logger.Error(err)		return	}	defer ws.Close()	for {		// write		err = ws.WriteJSON(analytic.GetNodeStat())		if helper.IsUnexpectedWebsocketError(err) {			logger.Error(err)			break		}		time.Sleep(10 * time.Second)	}}func GetNodesAnalytic(c *gin.Context) {	var upGrader = websocket.Upgrader{		CheckOrigin: func(r *http.Request) bool {			return true		},	}	// upgrade http to websocket	ws, err := upGrader.Upgrade(c.Writer, c.Request, nil)	if err != nil {		logger.Error(err)		return	}	defer ws.Close()	for {		// write		err = ws.WriteJSON(analytic.NodeMap)		if helper.IsUnexpectedWebsocketError(err) {			logger.Error(err)			break		}		time.Sleep(10 * time.Second)	}}
 |