From 9bfc3ce1a86e661d8c935f204c7c31726fb55267 Mon Sep 17 00:00:00 2001 From: zhangxin10 Date: Mon, 30 Nov 2015 22:21:33 +0800 Subject: [PATCH] =?UTF-8?q?Span=E6=96=B0=E5=A2=9E=E4=B8=80=E4=B8=AA?= =?UTF-8?q?=E6=9E=84=E9=80=A0=E5=87=BD=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../skywalking/util/ContextGenerator.java | 4 +--- .../ai/cloud/skywalking/protocol/Span.java | 7 +++++++ .../cloud/skywalking/protocol/SpanData.java | 20 +++++++++---------- 3 files changed, 18 insertions(+), 13 deletions(-) diff --git a/skywalking-api/src/main/java/com/ai/cloud/skywalking/util/ContextGenerator.java b/skywalking-api/src/main/java/com/ai/cloud/skywalking/util/ContextGenerator.java index 050c5866f..904dfa633 100644 --- a/skywalking-api/src/main/java/com/ai/cloud/skywalking/util/ContextGenerator.java +++ b/skywalking-api/src/main/java/com/ai/cloud/skywalking/util/ContextGenerator.java @@ -34,9 +34,7 @@ public final class ContextGenerator { spanData = new Span(TraceIdGenerator.generate(), Config.SkyWalking.APPLICATION_ID); } else { // 如果不为空,则将当前的Context存放到上下文 - spanData = new Span(context.getTraceId(), Config.SkyWalking.APPLICATION_ID); - spanData.setParentLevel(context.getParentLevel()); - spanData.setLevelId(context.getLevelId()); + spanData = new Span(context.getTraceId(), context.getParentLevel(), context.getLevelId(), Config.SkyWalking.APPLICATION_ID); } initNewSpanData(spanData, id); diff --git a/skywalking-protocol/src/main/java/com/ai/cloud/skywalking/protocol/Span.java b/skywalking-protocol/src/main/java/com/ai/cloud/skywalking/protocol/Span.java index d9ddc47e8..4fd44a14f 100644 --- a/skywalking-protocol/src/main/java/com/ai/cloud/skywalking/protocol/Span.java +++ b/skywalking-protocol/src/main/java/com/ai/cloud/skywalking/protocol/Span.java @@ -18,6 +18,13 @@ public class Span extends SpanData { this.applicationId = applicationID; } + public Span(String traceId, String parentLevelId, int levelId, String applicationID) { + this.traceId = traceId; + this.applicationId = applicationID; + this.parentLevel = parentLevelId; + this.levelId = levelId; + } + public Span(String originData) { String[] fieldValues = originData.split(SPILT_REGEX); traceId = fieldValues[0].trim(); diff --git a/skywalking-protocol/src/main/java/com/ai/cloud/skywalking/protocol/SpanData.java b/skywalking-protocol/src/main/java/com/ai/cloud/skywalking/protocol/SpanData.java index 9244c1c79..b7721c147 100644 --- a/skywalking-protocol/src/main/java/com/ai/cloud/skywalking/protocol/SpanData.java +++ b/skywalking-protocol/src/main/java/com/ai/cloud/skywalking/protocol/SpanData.java @@ -10,19 +10,19 @@ public abstract class SpanData { protected String traceId; protected String parentLevel; - protected int levelId; - protected String viewPointId; - protected long startDate; - protected long cost; - protected String address; + protected int levelId = 0; + protected String viewPointId = ""; + protected long startDate = System.currentTimeMillis(); + protected long cost = 0L; + protected String address = ""; protected byte statusCode = 0; protected String exceptionStack; - protected char spanType; + protected char spanType = 'M'; protected boolean isReceiver = false; - protected String businessKey; - protected String processNo; - protected String applicationId; - protected String originData; + protected String businessKey = ""; + protected String processNo = ""; + protected String applicationId = ""; + protected String originData = ""; public String getTraceId() {