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 2023/01/09 13:08:36 UTC
[skywalking] branch master updated: Fix TCP service instances are lack of instance properties like `pod` and `namespace`, which causes Pod log not to work for TCP workloads (#10252)
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 4df62b6210 Fix TCP service instances are lack of instance properties like `pod` and `namespace`, which causes Pod log not to work for TCP workloads (#10252)
4df62b6210 is described below
commit 4df62b6210042ff3ac217980962141b9c1b1b084
Author: kezhenxu94 <ke...@apache.org>
AuthorDate: Mon Jan 9 21:08:21 2023 +0800
Fix TCP service instances are lack of instance properties like `pod` and `namespace`, which causes Pod log not to work for TCP workloads (#10252)
---
docs/en/changes/changes.md | 1 +
.../envoy/als/tcp/TCPLogEntry2MetricsAdapter.java | 21 +++++++++++++++++++++
2 files changed, 22 insertions(+)
diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md
index 2d8eb04bd2..d4a17c02ed 100644
--- a/docs/en/changes/changes.md
+++ b/docs/en/changes/changes.md
@@ -75,6 +75,7 @@
* Add `BanyanDB.StoreIDTag` to store a process's id for searching.
* [**Breaking Change**] The supported version of ShardingSphere-Proxy is upgraded from 5.1.2 to 5.3.1. Due to the changes of ShardingSphere's API, versions before 5.3.1 are not compatible.
* Add the eBPF network profiling E2E Test in the per storage.
+* Fix TCP service instances are lack of instance properties like `pod` and `namespace`, which causes Pod log not to work for TCP workloads.
#### UI
diff --git a/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/als/tcp/TCPLogEntry2MetricsAdapter.java b/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/als/tcp/TCPLogEntry2MetricsAdapter.java
index c847e31471..8c4963eb86 100644
--- a/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/als/tcp/TCPLogEntry2MetricsAdapter.java
+++ b/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/als/tcp/TCPLogEntry2MetricsAdapter.java
@@ -25,6 +25,7 @@ import io.envoyproxy.envoy.data.accesslog.v3.TCPAccessLogEntry;
import java.util.Optional;
import lombok.RequiredArgsConstructor;
import org.apache.skywalking.apm.network.common.v3.DetectPoint;
+import org.apache.skywalking.apm.network.common.v3.KeyStringValuePair;
import org.apache.skywalking.apm.network.servicemesh.v3.TCPServiceMeshMetric;
import org.apache.skywalking.oap.server.receiver.envoy.als.ServiceMetaInfo;
@@ -113,6 +114,26 @@ public class TCPLogEntry2MetricsAdapter {
.map(ServiceMetaInfo::getServiceInstanceName)
.ifPresent(builder::setDestServiceInstance);
+ Optional
+ .ofNullable(sourceService)
+ .map(ServiceMetaInfo::getTags)
+ .ifPresent(tags -> {
+ tags.forEach(p -> {
+ builder.addSourceInstanceProperties(
+ KeyStringValuePair.newBuilder().setKey(p.getKey()).setValue(p.getValue()));
+ });
+ });
+
+ Optional
+ .ofNullable(targetService)
+ .map(ServiceMetaInfo::getTags)
+ .ifPresent(tags -> {
+ tags.forEach(p -> {
+ builder.addDestInstanceProperties(
+ KeyStringValuePair.newBuilder().setKey(p.getKey()).setValue(p.getValue()));
+ });
+ });
+
return builder;
}