node.go 758 B

1234567891011121314151617181920212223242526272829303132333435
  1. package api
  2. import (
  3. "github.com/0xJacky/Nginx-UI/server/service"
  4. "github.com/gin-gonic/gin"
  5. "github.com/shirou/gopsutil/v3/cpu"
  6. "net/http"
  7. )
  8. func GetCurrentNode(c *gin.Context) {
  9. if _, ok := c.Get("NodeSecret"); !ok {
  10. c.JSON(http.StatusNotAcceptable, gin.H{
  11. "message": "node secret not exist",
  12. })
  13. return
  14. }
  15. runtimeInfo, err := service.GetRuntimeInfo()
  16. if err != nil {
  17. ErrHandler(c, err)
  18. return
  19. }
  20. cpuInfo, _ := cpu.Info()
  21. memory, _ := getMemoryStat()
  22. ver, _ := service.GetCurrentVersion()
  23. c.JSON(http.StatusOK, gin.H{
  24. "request_node_secret": c.MustGet("NodeSecret"),
  25. "node_runtime_info": runtimeInfo,
  26. "cpu_num": len(cpuInfo),
  27. "memory_total": memory.Total,
  28. "version": ver.Version,
  29. })
  30. }