You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by wu...@apache.org on 2019/06/26 23:29:54 UTC

[skywalking] branch master updated: Fix CPU is 0. (#2952)

This is an automated email from the ASF dual-hosted git repository.

wusheng pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/skywalking.git


The following commit(s) were added to refs/heads/master by this push:
     new 62d0138  Fix CPU is 0. (#2952)
62d0138 is described below

commit 62d01382a70286ba080a7e658f15bd3b16bf457a
Author: 吴晟 Wu Sheng <wu...@foxmail.com>
AuthorDate: Thu Jun 27 07:29:45 2019 +0800

    Fix CPU is 0. (#2952)
---
 .../apache/skywalking/apm/agent/core/jvm/cpu/CPUMetricsAccessor.java | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/jvm/cpu/CPUMetricsAccessor.java b/apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/jvm/cpu/CPUMetricsAccessor.java
index 174d209..140a3d1 100644
--- a/apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/jvm/cpu/CPUMetricsAccessor.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/jvm/cpu/CPUMetricsAccessor.java
@@ -22,6 +22,9 @@ package org.apache.skywalking.apm.agent.core.jvm.cpu;
 import org.apache.skywalking.apm.network.common.CPU;
 
 /**
+ * The unit of CPU usage is 1/10000.
+ * The backend is using `avg` func directly, and query for percentage requires this unit.
+ *
  * @author wusheng
  */
 public abstract class CPUMetricsAccessor {
@@ -46,6 +49,6 @@ public abstract class CPUMetricsAccessor {
         long now = System.nanoTime();
 
         CPU.Builder cpuBuilder = CPU.newBuilder();
-        return cpuBuilder.setUsagePercent(cpuCost * 1.0d / ((now - lastSampleTimeNs) * cpuCoreNum) * 100).build();
+        return cpuBuilder.setUsagePercent(cpuCost * 1.0d / ((now - lastSampleTimeNs) * cpuCoreNum) * 10000).build();
     }
 }