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 5a7c53b1b8 Convert Kubernetes HTTP latency related metrics unit from 
ns to ms (#12436)
5a7c53b1b8 is described below

commit 5a7c53b1b8b86fb7fd96ac8f3be241c9a70e56d5
Author: mrproliu <[email protected]>
AuthorDate: Sat Jul 13 22:34:48 2024 +0800

    Convert Kubernetes HTTP latency related metrics unit from ns to ms (#12436)
---
 docs/en/changes/changes.md                             |  1 +
 docs/en/setup/backend/backend-k8s-monitoring-rover.md  | 18 +++++++++---------
 .../ebpf/provider/handler/AccessLogServiceHandler.java |  8 ++++++--
 .../k8s_service/K8S-Endpoint.json                      |  2 +-
 .../k8s_service/K8S-Service-Instance-Relation.json     |  4 ++--
 .../k8s_service/K8S-Service-Relation.json              |  4 ++--
 .../k8s_service/k8s-service-pod.json                   |  4 ++--
 .../k8s_service/k8s-service-root.json                  |  6 +++---
 .../k8s_service/k8s-service-service.json               | 16 ++++++++--------
 9 files changed, 34 insertions(+), 29 deletions(-)

diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md
index d0b0736441..3f8b3af633 100644
--- a/docs/en/changes/changes.md
+++ b/docs/en/changes/changes.md
@@ -32,6 +32,7 @@
 * Support tracing logs query for debugging.
 * BanyanDB: fix Tag autocomplete data storage and query.
 * Support aggregation operators in PromQL query.
+* Update the kubernetes HTTP latency related metrics source unit from `ns` to 
`ms`.
 
 #### UI
 * Highlight search log keywords.
diff --git a/docs/en/setup/backend/backend-k8s-monitoring-rover.md 
b/docs/en/setup/backend/backend-k8s-monitoring-rover.md
index d409cd7241..28614f201e 100644
--- a/docs/en/setup/backend/backend-k8s-monitoring-rover.md
+++ b/docs/en/setup/backend/backend-k8s-monitoring-rover.md
@@ -86,15 +86,15 @@ Based on each transfer data analysis, extract the 
information of the 7-layer net
 
 #### HTTP/1.x or HTTP/2.x
 
-| Name                 | Init        | Description                             
         |
-|----------------------|-------------|--------------------------------------------------|
-| Call CPM             | Count       | HTTP Request calls per minutes.         
         |
-| Duration             | Nanoseconds | Total HTTP Response use duration.       
         |
-| Success CPM          | Count       | Total HTTP Response success(status < 
500) count. |
-| Request Header Size  | Bytes       | Total Request Header size.              
         |
-| Request Body Size    | Bytes       | Total Request Body size.                
         |
-| Response Header Size | Bytes       | Total Response Header size.             
         |
-| Response Body Size   | Bytes       | Total Response Body size.               
         |
+| Name                 | Init         | Description                            
          |
+|----------------------|--------------|--------------------------------------------------|
+| Call CPM             | Count        | HTTP Request calls per minutes.        
          |
+| Duration             | Milliseconds | Total HTTP Response use duration.      
          |
+| Success CPM          | Count        | Total HTTP Response success(status < 
500) count. |
+| Request Header Size  | Bytes        | Total Request Header size.             
          |
+| Request Body Size    | Bytes        | Total Request Body size.               
          |
+| Response Header Size | Bytes        | Total Response Header size.            
          |
+| Response Body Size   | Bytes        | Total Response Body size.              
          |
 
 ## Customizations
 You can customize your own metrics/dashboard panel.
diff --git 
a/oap-server/server-receiver-plugin/skywalking-ebpf-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/ebpf/provider/handler/AccessLogServiceHandler.java
 
b/oap-server/server-receiver-plugin/skywalking-ebpf-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/ebpf/provider/handler/AccessLogServiceHandler.java
index 7add7ed0fa..189afa5494 100644
--- 
a/oap-server/server-receiver-plugin/skywalking-ebpf-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/ebpf/provider/handler/AccessLogServiceHandler.java
+++ 
b/oap-server/server-receiver-plugin/skywalking-ebpf-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/ebpf/provider/handler/AccessLogServiceHandler.java
@@ -300,7 +300,8 @@ public class AccessLogServiceHandler extends 
EBPFAccessLogServiceGrpc.EBPFAccess
                 protocol.setHttp(new K8SMetrics.ProtocolHTTP());
                 protocol.setSuccess(success);
 
-                protocol.getHttp().setLatency(getDurationFromTimestamp(node, 
http.getStartTime(), http.getEndTime()));
+                duration = convertNsToMs(getDurationFromTimestamp(node, 
http.getStartTime(), http.getEndTime()));
+                protocol.getHttp().setLatency(duration);
                 protocol.getHttp().setUrl(http.getRequest().getPath());
                 
protocol.getHttp().setMethod(http.getRequest().getMethod().name());
                 
protocol.getHttp().setStatusCode(http.getResponse().getStatusCode());
@@ -308,7 +309,6 @@ public class AccessLogServiceHandler extends 
EBPFAccessLogServiceGrpc.EBPFAccess
                 
protocol.getHttp().setSizeOfRequestBody(http.getRequest().getSizeOfBodyBytes());
                 
protocol.getHttp().setSizeOfResponseHeader(http.getResponse().getSizeOfHeadersBytes());
                 
protocol.getHttp().setSizeOfResponseBody(http.getResponse().getSizeOfBodyBytes());
-                duration = protocol.getHttp().getLatency();
                 break;
         }
 
@@ -716,4 +716,8 @@ public class AccessLogServiceHandler extends 
EBPFAccessLogServiceGrpc.EBPFAccess
             count.incrementAndGet();
         }
     }
+
+    protected long convertNsToMs(long latency) {
+        return TimeUnit.NANOSECONDS.toMillis(latency);
+    }
 }
diff --git 
a/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/K8S-Endpoint.json
 
b/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/K8S-Endpoint.json
index 9ca61e32b5..3637b8b8c1 100644
--- 
a/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/K8S-Endpoint.json
+++ 
b/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/K8S-Endpoint.json
@@ -64,7 +64,7 @@
                   "i": "1",
                   "type": "Widget",
                   "expressions": [
-                    
"kubernetes_service_endpoint_http_call_duration/kubernetes_service_endpoint_http_call_cpm/1000000"
+                    
"kubernetes_service_endpoint_http_call_duration/kubernetes_service_endpoint_http_call_cpm"
                   ],
                   "metricConfig": [
                     {
diff --git 
a/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/K8S-Service-Instance-Relation.json
 
b/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/K8S-Service-Instance-Relation.json
index c45d4307aa..ba6c1e5900 100644
--- 
a/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/K8S-Service-Instance-Relation.json
+++ 
b/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/K8S-Service-Instance-Relation.json
@@ -3286,7 +3286,7 @@
                   "i": "1",
                   "type": "Widget",
                   "expressions": [
-                    
"kubernetes_service_instance_relation_client_http_call_duration/kubernetes_service_instance_relation_client_http_call_cpm/1000000"
+                    
"kubernetes_service_instance_relation_client_http_call_duration/kubernetes_service_instance_relation_client_http_call_cpm"
                   ],
                   "graph": {
                     "type": "Line",
@@ -3400,7 +3400,7 @@
                   "i": "3",
                   "type": "Widget",
                   "expressions": [
-                    
"kubernetes_service_instance_relation_server_http_call_duration/kubernetes_service_instance_relation_server_http_call_cpm/1000000"
+                    
"kubernetes_service_instance_relation_server_http_call_duration/kubernetes_service_instance_relation_server_http_call_cpm"
                   ],
                   "graph": {
                     "type": "Line",
diff --git 
a/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/K8S-Service-Relation.json
 
b/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/K8S-Service-Relation.json
index 4d3207fc07..f28311f4df 100644
--- 
a/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/K8S-Service-Relation.json
+++ 
b/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/K8S-Service-Relation.json
@@ -3286,7 +3286,7 @@
                   "i": "1",
                   "type": "Widget",
                   "expressions": [
-                    
"kubernetes_service_relation_client_http_call_duration/kubernetes_service_relation_client_http_call_cpm/1000000"
+                    
"kubernetes_service_relation_client_http_call_duration/kubernetes_service_relation_client_http_call_cpm"
                   ],
                   "graph": {
                     "type": "Line",
@@ -3400,7 +3400,7 @@
                   "i": "3",
                   "type": "Widget",
                   "expressions": [
-                    
"kubernetes_service_relation_server_http_call_duration/kubernetes_service_relation_server_http_call_cpm/1000000"
+                    
"kubernetes_service_relation_server_http_call_duration/kubernetes_service_relation_server_http_call_cpm"
                   ],
                   "graph": {
                     "type": "Line",
diff --git 
a/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/k8s-service-pod.json
 
b/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/k8s-service-pod.json
index 92b05e3431..c9a324b159 100644
--- 
a/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/k8s-service-pod.json
+++ 
b/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/k8s-service-pod.json
@@ -1336,7 +1336,7 @@
                   "i": "1",
                   "type": "Widget",
                   "expressions": [
-                    
"kubernetes_service_instance_http_call_duration/kubernetes_service_instance_http_call_cpm/1000000"
+                    
"kubernetes_service_instance_http_call_duration/kubernetes_service_instance_http_call_cpm"
                   ],
                   "metricConfig": [
                     {
@@ -1533,7 +1533,7 @@
         "avg(kubernetes_service_instance_write_package_size)/60",
         "avg(kubernetes_service_instance_read_package_size)/60",
         "avg(kubernetes_service_instance_http_call_cpm)",
-        
"avg(kubernetes_service_instance_http_call_duration/kubernetes_service_instance_http_call_cpm/1000000)",
+        
"avg(kubernetes_service_instance_http_call_duration/kubernetes_service_instance_http_call_cpm)",
         "avg(kubernetes_service_instance_http_call_success_count / 
kubernetes_service_instance_http_call_cpm*100)"
       ],
       "expressionsConfig": [
diff --git 
a/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/k8s-service-root.json
 
b/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/k8s-service-root.json
index 42ea22d21c..96fab9635f 100644
--- 
a/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/k8s-service-root.json
+++ 
b/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/k8s-service-root.json
@@ -104,19 +104,19 @@
                     
"avg(kubernetes_service_relation_server_write_package_size)/60",
                     
"avg(kubernetes_service_relation_server_read_package_size)/60",
                     "avg(kubernetes_service_relation_client_http_call_cpm)/60",
-                    
"avg(kubernetes_service_relation_client_http_call_duration/kubernetes_service_relation_client_http_call_cpm)/1000000"
+                    
"avg(kubernetes_service_relation_client_http_call_duration/kubernetes_service_relation_client_http_call_cpm)"
                   ],
                   "linkClientExpressions": [
                     
"avg(kubernetes_service_relation_client_write_package_size)/60",
                     
"avg(kubernetes_service_relation_client_read_package_size)/60",
                     "avg(kubernetes_service_relation_server_http_call_cpm)/60",
-                    
"avg(kubernetes_service_relation_server_http_call_duration/kubernetes_service_relation_server_http_call_cpm)/1000000"
+                    
"avg(kubernetes_service_relation_server_http_call_duration/kubernetes_service_relation_server_http_call_cpm)"
                   ],
                   "nodeExpressions": [
                     "avg(kubernetes_service_write_package_size)/60",
                     "avg(kubernetes_service_read_package_size)/60",
                     "avg(kubernetes_service_http_call_cpm)",
-                    
"avg(kubernetes_service_http_call_duration/kubernetes_service_http_call_cpm)/1000000",
+                    
"avg(kubernetes_service_http_call_duration/kubernetes_service_http_call_cpm)",
                     "avg(kubernetes_service_http_call_success_count / 
kubernetes_service_http_call_cpm*100)"
                   ],
                   "legendMQE": {
diff --git 
a/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/k8s-service-service.json
 
b/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/k8s-service-service.json
index 61e59e6e12..30336c9f3c 100644
--- 
a/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/k8s-service-service.json
+++ 
b/oap-server/server-starter/src/main/resources/ui-initialized-templates/k8s_service/k8s-service-service.json
@@ -220,19 +220,19 @@
                     
"avg(kubernetes_service_relation_server_write_package_size)/60",
                     
"avg(kubernetes_service_relation_server_read_package_size)/60",
                     "avg(kubernetes_service_relation_server_http_call_cpm)/60",
-                    
"avg(kubernetes_service_relation_server_http_call_duration/kubernetes_service_relation_client_http_call_cpm)/1000000"
+                    
"avg(kubernetes_service_relation_server_http_call_duration/kubernetes_service_relation_client_http_call_cpm)"
                   ],
                   "linkClientExpressions": [
                     
"avg(kubernetes_service_relation_client_write_package_size)/60",
                     
"avg(kubernetes_service_relation_client_read_package_size)/60",
                     "avg(kubernetes_service_relation_client_http_call_cpm)/60",
-                    
"avg(kubernetes_service_relation_client_http_call_duration/kubernetes_service_relation_server_http_call_cpm)/1000000"
+                    
"avg(kubernetes_service_relation_client_http_call_duration/kubernetes_service_relation_server_http_call_cpm)"
                   ],
                   "nodeExpressions": [
                     "avg(kubernetes_service_write_package_size)/60",
                     "avg(kubernetes_service_read_package_size)/60",
                     "avg(kubernetes_service_http_call_cpm)",
-                    
"avg(kubernetes_service_http_call_duration/kubernetes_service_http_call_cpm)/1000000",
+                    
"avg(kubernetes_service_http_call_duration/kubernetes_service_http_call_cpm)",
                     "avg(kubernetes_service_http_call_success_count / 
kubernetes_service_http_call_cpm*100)"
                   ],
                   "legendMQE": {
@@ -1601,7 +1601,7 @@
                   "i": "1",
                   "type": "Widget",
                   "expressions": [
-                    
"kubernetes_service_http_call_duration/kubernetes_service_http_call_cpm/1000000"
+                    
"kubernetes_service_http_call_duration/kubernetes_service_http_call_cpm"
                   ],
                   "metricConfig": [
                     {
@@ -1818,7 +1818,7 @@
                   ],
                   "expressions": [
                     "latest(kubernetes_service_instance_http_call_cpm)",
-                    
"latest(kubernetes_service_instance_http_call_duration/kubernetes_service_instance_http_call_cpm)/1000000",
+                    
"latest(kubernetes_service_instance_http_call_duration/kubernetes_service_instance_http_call_cpm)",
                     
"latest(kubernetes_service_instance_http_call_success_count/kubernetes_service_instance_http_call_cpm*100)"
                   ]
                 }
@@ -1861,12 +1861,12 @@
                   "expressions": [
                     "avg(kubernetes_service_endpoint_call_cpm)",
                     
"avg(kubernetes_service_endpoint_call_success_cpm/kubernetes_service_endpoint_call_cpm*100)",
-                    
"avg(kubernetes_service_endpoint_call_duration/kubernetes_service_endpoint_call_cpm/1000000)"
+                    
"avg(kubernetes_service_endpoint_call_duration/kubernetes_service_endpoint_call_cpm)"
                   ],
                   "subExpressions": [
                     "kubernetes_service_endpoint_call_cpm",
                     
"kubernetes_service_endpoint_call_success_cpm/kubernetes_service_endpoint_call_cpm*100",
-                    
"kubernetes_service_endpoint_call_duration/kubernetes_service_endpoint_call_cpm/1000000"
+                    
"kubernetes_service_endpoint_call_duration/kubernetes_service_endpoint_call_cpm"
                   ]
                 }
               ]
@@ -1915,7 +1915,7 @@
         "avg(kubernetes_service_write_package_size)/60",
         "avg(kubernetes_service_read_package_size)/60",
         "avg(kubernetes_service_http_call_cpm)",
-        
"avg(kubernetes_service_http_call_duration/kubernetes_service_http_call_cpm/1000000)",
+        
"avg(kubernetes_service_http_call_duration/kubernetes_service_http_call_cpm)",
         "avg(kubernetes_service_http_call_success_count / 
kubernetes_service_http_call_cpm*100)"
       ],
       "expressionsConfig": [

Reply via email to