diff --git a/CHANGES.md b/CHANGES.md index d28d8ed40..26c18d640 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -39,6 +39,7 @@ Release Notes. * [Break Change] Fix typo for a column `page_path_id`(was `pate_path_id`) of storage entity `browser_error_log`. * Add component id for Python falcon plugin. * Add `rpcStatusCode` for `rpc.status_code` tag. The `responseCode` field is marked as deprecated and replaced by `httpResponseStatusCode` field. +* Remove the duplicated tags to reduce the storage payload. #### UI diff --git a/oap-server/analyzer/agent-analyzer/src/main/java/org/apache/skywalking/oap/server/analyzer/provider/trace/parser/listener/SegmentAnalysisListener.java b/oap-server/analyzer/agent-analyzer/src/main/java/org/apache/skywalking/oap/server/analyzer/provider/trace/parser/listener/SegmentAnalysisListener.java index f4e8c702c..f3597bbda 100644 --- a/oap-server/analyzer/agent-analyzer/src/main/java/org/apache/skywalking/oap/server/analyzer/provider/trace/parser/listener/SegmentAnalysisListener.java +++ b/oap-server/analyzer/agent-analyzer/src/main/java/org/apache/skywalking/oap/server/analyzer/provider/trace/parser/listener/SegmentAnalysisListener.java @@ -19,7 +19,6 @@ package org.apache.skywalking.oap.server.analyzer.provider.trace.parser.listener; import java.util.Arrays; -import java.util.HashSet; import java.util.List; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -153,17 +152,14 @@ public class SegmentAnalysisListener implements FirstAnalysisListener, EntryAnal } private void appendSearchableTags(SpanObject span) { - HashSet segmentTags = new HashSet<>(); span.getTagsList().forEach(tag -> { if (searchableTagKeys.contains(tag.getKey())) { final Tag spanTag = new Tag(tag.getKey(), tag.getValue()); - if (!segmentTags.contains(spanTag)) { - segmentTags.add(spanTag); + if (!segment.getTags().contains(spanTag)) { + segment.getTags().add(spanTag); } - } }); - segment.getTags().addAll(segmentTags); } @Override