qixiaoning
2025-10-29 9b17a8dcbc1f94eb117a37b3b24ca9dae0d2d588
sysinfo-service/service/proc.go
@@ -14,20 +14,20 @@
var BasicProc = map[string]string{
   // "analysis":      "算法处理单元",
   "apiserver":     "basic接口服务",
   "decoder":       "视频解码服务",
   "elasticsearch": "分布式数据搜索引擎",
   "apiserver": "basic接口服务",
   "decoder":   "视频解码服务",
   // "elasticsearch": "分布式数据搜索引擎",
   // "faceDetect":    "人脸识别服务",
   "file-service": "文件服务",
   "pollcontrol":  "轮询管理",
   "pushServer":   "规则处理单元",
   // "pollcontrol":  "轮询管理",
   "pushServer": "规则处理单元",
   // "dataProcess":   "规则处理单元",
   "schedule": "调度进程",
   // "sdkCompare":    "人脸比对服务",
   "sshd":         "ssh服务端",
   "videopublish": "实时视频推流服务",
   "videosvr.out": "国标上级服务",
   "weed":         "分布式文件系统",
   "sshd":       "ssh服务端",
   "zlmediaKit": "实时视频推流服务",
   "wvp":        "国标上级服务",
   "weed":       "分布式文件系统",
}
var ModleProc = map[string]string{
@@ -172,7 +172,7 @@
   apps := dbApi.FindAppMap()
   for k, v := range dbApi.FindAppMap() {
      if v.ProcName != "" {
         installedAppMap[v.ProcName] = apps[k]
         installedAppMap[v.Id] = apps[k]
      }
   }
@@ -193,40 +193,27 @@
         }
      }
   }
   // 统计正在运行的应用信息
   ps, _ := process.Processes()
   for _, p := range ps {
      if name, err := p.Name(); err == nil {
         if app, isExist := installedAppMap[name]; isExist {
            proc := Proc{
               Name: app.Name,
               Pid:  p.Pid,
               Desc: app.Title,
            }
            proc.Cpu, _ = p.CPUPercent()
            proc.Mem, _ = p.MemoryPercent()
            proc.Gpu = gpuPer.Get(int(p.Pid))
            procs = append(procs, proc)
            delete(installedAppMap, name)
         }
      }
   }
   // 追加未启动的应用
   for _, v := range installedAppMap {
      proc := Proc{
         Name: v.Name,
         Pid:  0,
         Desc: v.Title,
      }
      proc.Cpu = 0
      proc.Mem = 0
      proc.Gpu = 0
      for _, p := range ps {
         if name, err := p.Name(); err == nil {
            if name == v.ProcName {
               proc.Pid = p.Pid
               proc.Cpu, _ = p.CPUPercent()
               proc.Mem, _ = p.MemoryPercent()
               proc.Gpu = gpuPer.Get(int(p.Pid))
            }
         }
      }
      procs = append(procs, proc)
   }
@@ -252,7 +239,15 @@
            }
         }
         if k == "elasticsearch" {
         if k == "zlmediaKit" {
            cmdLine, _ := p.Cmdline()
            if strings.Contains(cmdLine, "MediaServer") {
               proc.Pid = p.Pid
               break
            }
         }
         if k == "wvp" {
            cmdLine, _ := p.Cmdline()
            if strings.Contains(cmdLine, k) {
               proc.Pid = p.Pid