Browse Source

new - vCPUs

mhsanaei 9 months ago
parent
commit
baf8c94b2e
2 changed files with 16 additions and 1 deletions
  1. 8 1
      web/html/xui/index.html
  2. 8 0
      web/service/server.go

+ 8 - 1
web/html/xui/index.html

@@ -45,7 +45,12 @@
                         <a-progress type="dashboard" status="normal"
                           :stroke-color="status.cpu.color"
                           :percent="status.cpu.percent"></a-progress>
-                        <div><b>CPU:</b> [[ cpuCoreFormat(status.cpuCores) ]]</div>
+                        <div><b>CPU:</b> [[ cpuCoreFormat(status.cpuCores) ]] <a-tooltip>
+                          <a-icon type="info-circle"></a-icon> 
+                          <template slot="title">
+                            <div><b>Logical Processors(vCPUs):</b> [[ (status.logicalPro) ]]</div>
+                          </template>
+                        </a-tooltip></div>
                         <div><b>Speed:</b> [[ cpuSpeedFormat(status.cpuSpeedMhz) ]]</div>
                       </a-col>
                       <a-col :span="12" style="text-align: center">
@@ -367,6 +372,7 @@
         constructor(data) {
             this.cpu = new CurTotal(0, 0);
             this.cpuCores = 0;
+            this.logicalPro = 0;
             this.cpuSpeedMhz = 0;
             this.disk = new CurTotal(0, 0);
             this.loads = [0, 0, 0];
@@ -387,6 +393,7 @@
             }
             this.cpu = new CurTotal(data.cpu, 100);
             this.cpuCores = data.cpuCores;
+            this.logicalPro = data.logicalPro;
             this.cpuSpeedMhz = data.cpuSpeedMhz;
             this.disk = new CurTotal(data.disk.current, data.disk.total);
             this.loads = data.loads.map(load => toFixed(load, 2));

+ 8 - 0
web/service/server.go

@@ -43,6 +43,7 @@ type Status struct {
 	T           time.Time `json:"-"`
 	Cpu         float64   `json:"cpu"`
 	CpuCores    int       `json:"cpuCores"`
+	LogicalPro  int       `json:"logicalPro"`
 	CpuSpeedMhz float64   `json:"cpuSpeedMhz"`
 	Mem         struct {
 		Current uint64 `json:"current"`
@@ -131,6 +132,13 @@ func (s *ServerService) GetStatus(lastStatus *Status) *Status {
 		logger.Warning("get cpu cores count failed:", err)
 	}
 
+	status.LogicalPro = runtime.NumCPU()
+	if p != nil && p.IsRunning() {
+		status.AppStats.Uptime = p.GetUptime()
+	} else {
+		status.AppStats.Uptime = 0
+	}
+
 	cpuInfos, err := cpu.Info()
 	if err != nil {
 		logger.Warning("get cpu info failed:", err)