diff --git a/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/DataSourceClientDigestJsonEncoder.java b/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/DataSourceClientDigestJsonEncoder.java index 53cbb53d..cc73ad76 100644 --- a/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/DataSourceClientDigestJsonEncoder.java +++ b/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/DataSourceClientDigestJsonEncoder.java @@ -23,7 +23,7 @@ import com.alipay.common.tracer.core.middleware.parent.AbstractDigestSpanEncoder; import com.alipay.common.tracer.core.span.CommonSpanTags; import com.alipay.common.tracer.core.span.SofaTracerSpan; -import java.io.IOException; + import java.util.Map; /** @@ -32,10 +32,11 @@ * @since 2.2.0 */ public class DataSourceClientDigestJsonEncoder extends AbstractDigestSpanEncoder { + @Override - public String encode(SofaTracerSpan span) throws IOException { + public String encode(SofaTracerSpan span) { JsonStringBuilder jsonStringBuilder = new JsonStringBuilder(); - jsonStringBuilder.appendBegin("time", Timestamp.format(span.getEndTime())); + jsonStringBuilder.appendBegin(CommonSpanTags.TIME, Timestamp.format(span.getEndTime())); appendSlot(jsonStringBuilder, span); return jsonStringBuilder.toString(); } @@ -48,9 +49,9 @@ private void appendSlot(JsonStringBuilder jsonStringBuilder, SofaTracerSpan sofa jsonStringBuilder .append(CommonSpanTags.LOCAL_APP, tagWithStr.get(CommonSpanTags.LOCAL_APP)); //TraceId - jsonStringBuilder.append("traceId", context.getTraceId()); + jsonStringBuilder.append(CommonSpanTags.TRACE_ID, context.getTraceId()); //SpanId - jsonStringBuilder.append("spanId", context.getSpanId()); + jsonStringBuilder.append(CommonSpanTags.SPAN_ID, context.getSpanId()); //schema jsonStringBuilder.append(DataSourceTracerKeys.DATABASE_NAME, tagWithStr.get(DataSourceTracerKeys.DATABASE_NAME)); @@ -86,6 +87,7 @@ private void appendSlot(JsonStringBuilder jsonStringBuilder, SofaTracerSpan sofa private void appendBaggage(JsonStringBuilder jsonStringBuilder, SofaTracerSpanContext sofaTracerSpanContext) { //baggage - jsonStringBuilder.appendEnd("baggage", baggageSerialized(sofaTracerSpanContext)); + jsonStringBuilder.appendEnd(CommonSpanTags.BAGGAGE, + baggageSerialized(sofaTracerSpanContext)); } } \ No newline at end of file diff --git a/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/DataSourceClientStatJsonReporter.java b/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/DataSourceClientStatJsonReporter.java index 3a8ce56c..fc644ce6 100644 --- a/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/DataSourceClientStatJsonReporter.java +++ b/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/DataSourceClientStatJsonReporter.java @@ -20,6 +20,7 @@ import com.alipay.common.tracer.core.appender.file.LoadTestAwareAppender; import com.alipay.common.tracer.core.appender.self.SelfLog; import com.alipay.common.tracer.core.appender.self.Timestamp; +import com.alipay.common.tracer.core.constants.SofaTracerConstant; import com.alipay.common.tracer.core.reporter.stat.AbstractSofaTracerStatisticReporter; import com.alipay.common.tracer.core.reporter.stat.model.StatKey; import com.alipay.common.tracer.core.reporter.stat.model.StatMapKey; @@ -50,8 +51,9 @@ public void doReportStat(SofaTracerSpan sofaTracerSpan) { tagsWithStr.get(DataSourceTracerKeys.DATABASE_NAME)); statKey.addKey(DataSourceTracerKeys.SQL, tagsWithStr.get(DataSourceTracerKeys.SQL)); //result - String result = DataSourceClientTracer.RESULT_CODE_SUCCESS.equals(tagsWithStr - .get(DataSourceTracerKeys.RESULT_CODE)) ? "true" : "false"; + String result = SofaTracerConstant.RESULT_CODE_SUCCESS.equals(tagsWithStr + .get(DataSourceTracerKeys.RESULT_CODE)) ? SofaTracerConstant.STAT_FLAG_SUCCESS + : SofaTracerConstant.STAT_FLAG_FAILS; statKey.setResult(result); //pressure mark statKey.setLoadTest(TracerUtils.isLoadTest(sofaTracerSpan)); @@ -77,13 +79,13 @@ public void print(StatKey statKey, long[] values) { try { jsonBuffer.reset(); jsonBuffer.appendBegin(); - jsonBuffer.append("time", Timestamp.currentTime()); - jsonBuffer.append("stat.key", this.statKeySplit(statMapKey)); - jsonBuffer.append("count", values[0]); - jsonBuffer.append("total.cost.milliseconds", values[1]); - jsonBuffer.append("success", statMapKey.getResult()); + jsonBuffer.append(CommonSpanTags.TIME, Timestamp.currentTime()); + jsonBuffer.append(CommonSpanTags.STAT_KEY, this.statKeySplit(statMapKey)); + jsonBuffer.append(CommonSpanTags.COUNT, values[0]); + jsonBuffer.append(CommonSpanTags.TOTAL_COST_MILLISECONDS, values[1]); + jsonBuffer.append(CommonSpanTags.SUCCESS, statMapKey.getResult()); //pressure - jsonBuffer.appendEnd("load.test", statMapKey.getEnd()); + jsonBuffer.appendEnd(CommonSpanTags.LOAD_TEST, statMapKey.getEnd()); if (appender instanceof LoadTestAwareAppender) { ((LoadTestAwareAppender) appender).append(jsonBuffer.toString(), diff --git a/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/DataSourceClientTracer.java b/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/DataSourceClientTracer.java index d0f98f73..c182ed65 100644 --- a/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/DataSourceClientTracer.java +++ b/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/DataSourceClientTracer.java @@ -19,6 +19,7 @@ import com.alipay.common.tracer.core.appender.encoder.SpanEncoder; import com.alipay.common.tracer.core.appender.self.SelfLog; import com.alipay.common.tracer.core.configuration.SofaTracerConfiguration; +import com.alipay.common.tracer.core.constants.ComponentNameConstants; import com.alipay.common.tracer.core.context.span.SofaTracerSpanContext; import com.alipay.common.tracer.core.context.trace.SofaTraceContext; import com.alipay.common.tracer.core.holder.SofaTraceContextHolder; @@ -41,13 +42,8 @@ protected DataSourceTracerState initialValue() { return null; } }; - private volatile static DataSourceClientTracer dataSourceClientTracer = null; - public static final String RESULT_CODE_SUCCESS = "success"; - - public static final String RESULT_CODE_FAILED = "failed"; - /*** * DataSource Client Tracer Singleton * @return singleton @@ -64,7 +60,7 @@ public static DataSourceClientTracer getDataSourceClientTracer() { } private DataSourceClientTracer() { - super("dataSource"); + super(ComponentNameConstants.DATA_SOURCE); } @Override diff --git a/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/StatementTracerInterceptor.java b/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/StatementTracerInterceptor.java index ad736833..25489356 100644 --- a/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/StatementTracerInterceptor.java +++ b/sofa-tracer-plugins/sofa-tracer-datasource-plugin/src/main/java/com/alipay/sofa/tracer/plugins/datasource/tracer/StatementTracerInterceptor.java @@ -16,6 +16,7 @@ */ package com.alipay.sofa.tracer.plugins.datasource.tracer; +import com.alipay.common.tracer.core.constants.SofaTracerConstant; import com.alipay.sofa.tracer.plugins.datasource.Interceptor; /** @@ -34,12 +35,12 @@ public void setClientTracer(DataSourceClientTracer clientTracer) { @Override public Object intercept(Chain chain) throws Exception { long start = System.currentTimeMillis(); - String resultCode = DataSourceClientTracer.RESULT_CODE_SUCCESS; + String resultCode = SofaTracerConstant.RESULT_SUCCESS; try { clientTracer.startTrace(chain.getOriginalSql()); return chain.proceed(); } catch (Exception e) { - resultCode = DataSourceClientTracer.RESULT_CODE_FAILED; + resultCode = SofaTracerConstant.RESULT_FAILED; throw e; } finally { clientTracer.endTrace(System.currentTimeMillis() - start, resultCode); diff --git a/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/DubboSofaTracerFilter.java b/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/DubboSofaTracerFilter.java index 85d8216e..a229b66d 100644 --- a/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/DubboSofaTracerFilter.java +++ b/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/DubboSofaTracerFilter.java @@ -18,6 +18,7 @@ import com.alipay.common.tracer.core.appender.self.SelfLog; import com.alipay.common.tracer.core.configuration.SofaTracerConfiguration; +import com.alipay.common.tracer.core.constants.SofaTracerConstant; import com.alipay.common.tracer.core.context.span.SofaTracerSpanContext; import com.alipay.common.tracer.core.context.trace.SofaTraceContext; import com.alipay.common.tracer.core.holder.SofaTraceContextHolder; @@ -46,23 +47,17 @@ @Activate(group = { Constants.PROVIDER, Constants.CONSUMER }, value = "dubboSofaTracerFilter", order = 1) public class DubboSofaTracerFilter implements Filter { - private String appName = StringUtils.EMPTY_STRING; + private String appName = StringUtils.EMPTY_STRING; - private static final String BLANK = StringUtils.EMPTY_STRING; + private static final String BLANK = StringUtils.EMPTY_STRING; - private static final String SUCCESS_CODE = "00"; - - private static final String FAILED_CODE = "99"; - - private static final String TIME_OUT_ERROR_CODE = "03"; - - private static final String SPAN_INVOKE_KEY = "sofa.current.span.key"; + private static final String SPAN_INVOKE_KEY = "sofa.current.span.key"; private DubboConsumerSofaTracer dubboConsumerSofaTracer; private DubboProviderSofaTracer dubboProviderSofaTracer; - private static Map TracerSpanMap = new ConcurrentHashMap(); + private static Map TracerSpanMap = new ConcurrentHashMap(); @Override public Result invoke(Invoker invoker, Invocation invocation) throws RpcException { @@ -104,14 +99,14 @@ public Result onResponse(Result result, Invoker invoker, Invocation invocatio this.dubboConsumerSofaTracer = DubboConsumerSofaTracer .getDubboConsumerSofaTracerSingleton(); } - String resultCode = SUCCESS_CODE; + String resultCode = SofaTracerConstant.RESULT_CODE_SUCCESS; if (result.hasException()) { if (result.getException() instanceof RpcException) { resultCode = Integer.toString(((RpcException) result.getException()) .getCode()); sofaTracerSpan.setTag(CommonSpanTags.RESULT_CODE, resultCode); } else { - resultCode = FAILED_CODE; + resultCode = SofaTracerConstant.RESULT_CODE_ERROR; } } // add elapsed time @@ -168,7 +163,7 @@ private Result doClientFilter(RpcContext rpcContext, Invoker invoker, Invocat } Result result; Throwable exception = null; - String resultCode = SUCCESS_CODE; + String resultCode = SofaTracerConstant.RESULT_CODE_SUCCESS; try { // do invoke result = invoker.invoke(invocation); @@ -195,7 +190,7 @@ private Result doClientFilter(RpcContext rpcContext, Invoker invoker, Invocat RpcException rpcException = (RpcException) exception; resultCode = String.valueOf(rpcException.getCode()); } else { - resultCode = FAILED_CODE; + resultCode = SofaTracerConstant.RESULT_CODE_ERROR; } } @@ -218,7 +213,7 @@ private Result doClientFilter(RpcContext rpcContext, Invoker invoker, Invocat future.whenComplete((object, throwable)-> { if (throwable instanceof TimeoutException) { sofaTracerSpan.setTag(Tags.ERROR.getKey(),throwable.getMessage()); - dubboConsumerSofaTracer.clientReceiveTagFinish(sofaTracerSpan, TIME_OUT_ERROR_CODE); + dubboConsumerSofaTracer.clientReceiveTagFinish(sofaTracerSpan, SofaTracerConstant.RESULT_CODE_TIME_OUT); } }); } @@ -260,7 +255,7 @@ private Result doServerFilter(RpcContext rpcContext, Invoker invoker, Invocat exception = t; throw new RpcException(t); } finally { - String resultCode = SUCCESS_CODE; + String resultCode = SofaTracerConstant.RESULT_CODE_SUCCESS; if (exception != null) { if (exception instanceof RpcException) { sofaTracerSpan.setTag(Tags.ERROR.getKey(), exception.getMessage()); @@ -269,7 +264,7 @@ private Result doServerFilter(RpcContext rpcContext, Invoker invoker, Invocat resultCode = String.valueOf(rpcException.getCode()); } } else { - resultCode = FAILED_CODE; + resultCode = SofaTracerConstant.RESULT_CODE_ERROR; } } dubboProviderSofaTracer.serverSend(resultCode); diff --git a/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/encoder/DubboClientDigestJsonEncoder.java b/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/encoder/DubboClientDigestJsonEncoder.java index 73d8c9e5..63db1eb6 100644 --- a/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/encoder/DubboClientDigestJsonEncoder.java +++ b/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/encoder/DubboClientDigestJsonEncoder.java @@ -39,16 +39,16 @@ public String encode(SofaTracerSpan sofaTracerSpan) throws IOException { JsonStringBuilder data = new JsonStringBuilder(); //span end time - data.appendBegin("time", Timestamp.format(sofaTracerSpan.getEndTime())); + data.appendBegin(CommonSpanTags.TIME, Timestamp.format(sofaTracerSpan.getEndTime())); Map tagStr = sofaTracerSpan.getTagsWithStr(); Map tagNum = sofaTracerSpan.getTagsWithNumber(); SofaTracerSpanContext context = sofaTracerSpan.getSofaTracerSpanContext(); // TraceId - data.append("traceId", context.getTraceId()); + data.append(CommonSpanTags.TRACE_ID, context.getTraceId()); // SpanId - data.append("spanId", context.getSpanId()); + data.append(CommonSpanTags.SPAN_ID, context.getSpanId()); // Span Type data.append(Tags.SPAN_KIND.getKey(), tagStr.get(Tags.SPAN_KIND.getKey())); // app name @@ -89,7 +89,7 @@ public String encode(SofaTracerSpan sofaTracerSpan) throws IOException { data.append(CommonSpanTags.CURRENT_THREAD_NAME, tagStr.get(CommonSpanTags.CURRENT_THREAD_NAME)); //time-consuming ms - data.append("time.cost.milliseconds", + data.append(CommonSpanTags.TIME_COST_MILLISECONDS, (sofaTracerSpan.getEndTime() - sofaTracerSpan.getStartTime())); this.appendBaggage(data, context); return data.toString(); @@ -98,7 +98,8 @@ public String encode(SofaTracerSpan sofaTracerSpan) throws IOException { private void appendBaggage(JsonStringBuilder jsonStringBuilder, SofaTracerSpanContext sofaTracerSpanContext) { //baggage - jsonStringBuilder.appendEnd("baggage", baggageSerialized(sofaTracerSpanContext)); + jsonStringBuilder.appendEnd(CommonSpanTags.BAGGAGE, + baggageSerialized(sofaTracerSpanContext)); } } diff --git a/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/encoder/DubboServerDigestJsonEncoder.java b/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/encoder/DubboServerDigestJsonEncoder.java index 67138081..edf0a3fc 100644 --- a/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/encoder/DubboServerDigestJsonEncoder.java +++ b/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/encoder/DubboServerDigestJsonEncoder.java @@ -38,14 +38,14 @@ public class DubboServerDigestJsonEncoder extends AbstractDigestSpanEncoder { public String encode(SofaTracerSpan sofaTracerSpan) throws IOException { JsonStringBuilder data = new JsonStringBuilder(); //span end time - data.appendBegin("time", Timestamp.format(sofaTracerSpan.getEndTime())); + data.appendBegin(CommonSpanTags.TIME, Timestamp.format(sofaTracerSpan.getEndTime())); Map tagStr = sofaTracerSpan.getTagsWithStr(); Map tagNum = sofaTracerSpan.getTagsWithNumber(); SofaTracerSpanContext context = sofaTracerSpan.getSofaTracerSpanContext(); //TraceId - data.append("traceId", context.getTraceId()); + data.append(CommonSpanTags.TRACE_ID, context.getTraceId()); //SpanId - data.append("spanId", context.getSpanId()); + data.append(CommonSpanTags.SPAN_ID, context.getSpanId()); //Span Type data.append(Tags.SPAN_KIND.getKey(), tagStr.get(Tags.SPAN_KIND.getKey())); //local appName @@ -74,7 +74,7 @@ public String encode(SofaTracerSpan sofaTracerSpan) throws IOException { data.append(CommonSpanTags.CURRENT_THREAD_NAME, tagStr.get(CommonSpanTags.CURRENT_THREAD_NAME)); //time-consuming ms - data.append("time.cost.milliseconds", + data.append(CommonSpanTags.TIME_COST_MILLISECONDS, (sofaTracerSpan.getEndTime() - sofaTracerSpan.getStartTime())); this.appendBaggage(data, context); return data.toString(); @@ -90,6 +90,7 @@ private long getTime(Number number) { private void appendBaggage(JsonStringBuilder jsonStringBuilder, SofaTracerSpanContext sofaTracerSpanContext) { //baggage - jsonStringBuilder.appendEnd("baggage", baggageSerialized(sofaTracerSpanContext)); + jsonStringBuilder.appendEnd(CommonSpanTags.BAGGAGE, + baggageSerialized(sofaTracerSpanContext)); } } diff --git a/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/stat/DubboClientStatJsonReporter.java b/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/stat/DubboClientStatJsonReporter.java index 5c0b928e..ef2d6354 100644 --- a/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/stat/DubboClientStatJsonReporter.java +++ b/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/stat/DubboClientStatJsonReporter.java @@ -20,6 +20,7 @@ import com.alipay.common.tracer.core.appender.file.LoadTestAwareAppender; import com.alipay.common.tracer.core.appender.self.SelfLog; import com.alipay.common.tracer.core.appender.self.Timestamp; +import com.alipay.common.tracer.core.constants.SofaTracerConstant; import com.alipay.common.tracer.core.reporter.stat.AbstractSofaTracerStatisticReporter; import com.alipay.common.tracer.core.reporter.stat.model.StatKey; import com.alipay.common.tracer.core.reporter.stat.model.StatMapKey; @@ -58,7 +59,9 @@ public void doReportStat(SofaTracerSpan sofaTracerSpan) { String methodName = tagsWithStr.get(CommonSpanTags.METHOD); statKey.setKey(buildString(new String[] { fromApp, toApp, serviceName, methodName })); String resultCode = tagsWithStr.get(CommonSpanTags.RESULT_CODE); - statKey.setResult("00".equals(resultCode) ? "Y" : "N"); + statKey + .setResult(SofaTracerConstant.RESULT_CODE_SUCCESS.equals(resultCode) ? SofaTracerConstant.STAT_FLAG_SUCCESS + : SofaTracerConstant.STAT_FLAG_FAILS); statKey.setEnd(buildString(new String[] { getLoadTestMark(sofaTracerSpan) })); statKey.setLoadTest(TracerUtils.isLoadTest(sofaTracerSpan)); statKey.addKey(CommonSpanTags.LOCAL_APP, fromApp); @@ -88,11 +91,11 @@ public void print(StatKey statKey, long[] values) { StatMapKey statMapKey = (StatMapKey) statKey; jsonBuffer.reset(); - jsonBuffer.appendBegin("time", Timestamp.currentTime()); - jsonBuffer.append("stat.key", this.statKeySplit(statMapKey)); - jsonBuffer.append("count", values[0]); - jsonBuffer.append("total.cost.milliseconds", values[1]); - jsonBuffer.append("success", statMapKey.getResult()); + jsonBuffer.appendBegin(CommonSpanTags.TIME, Timestamp.currentTime()); + jsonBuffer.append(CommonSpanTags.STAT_KEY, this.statKeySplit(statMapKey)); + jsonBuffer.append(CommonSpanTags.COUNT, values[0]); + jsonBuffer.append(CommonSpanTags.TIME_COST_MILLISECONDS, values[1]); + jsonBuffer.append(CommonSpanTags.SUCCESS, statMapKey.getResult()); jsonBuffer.appendEnd(); try { if (appender instanceof LoadTestAwareAppender) { diff --git a/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/stat/DubboServerStatJsonReporter.java b/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/stat/DubboServerStatJsonReporter.java index 4072fa21..a3305394 100644 --- a/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/stat/DubboServerStatJsonReporter.java +++ b/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/stat/DubboServerStatJsonReporter.java @@ -20,6 +20,7 @@ import com.alipay.common.tracer.core.appender.file.LoadTestAwareAppender; import com.alipay.common.tracer.core.appender.self.SelfLog; import com.alipay.common.tracer.core.appender.self.Timestamp; +import com.alipay.common.tracer.core.constants.SofaTracerConstant; import com.alipay.common.tracer.core.reporter.stat.AbstractSofaTracerStatisticReporter; import com.alipay.common.tracer.core.reporter.stat.model.StatKey; import com.alipay.common.tracer.core.reporter.stat.model.StatMapKey; @@ -58,7 +59,9 @@ public void doReportStat(SofaTracerSpan sofaTracerSpan) { String methodName = tagsWithStr.get(CommonSpanTags.METHOD); statKey.setKey(buildString(new String[] { fromApp, toApp, serviceName, methodName })); String resultCode = tagsWithStr.get(CommonSpanTags.RESULT_CODE); - statKey.setResult("00".equals(resultCode) ? "Y" : "N"); + statKey + .setResult(SofaTracerConstant.RESULT_CODE_SUCCESS.equals(resultCode) ? SofaTracerConstant.STAT_FLAG_SUCCESS + : SofaTracerConstant.STAT_FLAG_FAILS); statKey.setEnd(buildString(new String[] { getLoadTestMark(sofaTracerSpan) })); statKey.setLoadTest(TracerUtils.isLoadTest(sofaTracerSpan)); statKey.addKey(CommonSpanTags.LOCAL_APP, fromApp); @@ -89,11 +92,11 @@ public void print(StatKey statKey, long[] values) { StatMapKey statMapKey = (StatMapKey) statKey; jsonBuffer.reset(); - jsonBuffer.appendBegin("time", Timestamp.currentTime()); - jsonBuffer.append("stat.key", this.statKeySplit(statMapKey)); - jsonBuffer.append("count", values[0]); - jsonBuffer.append("total.cost.milliseconds", values[1]); - jsonBuffer.append("success", statMapKey.getResult()); + jsonBuffer.appendBegin(CommonSpanTags.TIME, Timestamp.currentTime()); + jsonBuffer.append(CommonSpanTags.STAT_KEY, this.statKeySplit(statMapKey)); + jsonBuffer.append(CommonSpanTags.COUNT, values[0]); + jsonBuffer.append(CommonSpanTags.TIME_COST_MILLISECONDS, values[1]); + jsonBuffer.append(CommonSpanTags.SUCCESS, statMapKey.getResult()); jsonBuffer.appendEnd(); try { if (appender instanceof LoadTestAwareAppender) { diff --git a/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/tracer/DubboConsumerSofaTracer.java b/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/tracer/DubboConsumerSofaTracer.java index f4d5798f..13bea5fd 100644 --- a/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/tracer/DubboConsumerSofaTracer.java +++ b/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/tracer/DubboConsumerSofaTracer.java @@ -18,6 +18,7 @@ import com.alipay.common.tracer.core.appender.encoder.SpanEncoder; import com.alipay.common.tracer.core.configuration.SofaTracerConfiguration; +import com.alipay.common.tracer.core.constants.ComponentNameConstants; import com.alipay.common.tracer.core.reporter.stat.AbstractSofaTracerStatisticReporter; import com.alipay.common.tracer.core.span.SofaTracerSpan; import com.alipay.common.tracer.core.tracer.AbstractClientTracer; @@ -37,7 +38,8 @@ public static DubboConsumerSofaTracer getDubboConsumerSofaTracerSingleton() { if (dubboConsumerSofaTracer == null) { synchronized (DubboConsumerSofaTracer.class) { if (dubboConsumerSofaTracer == null) { - dubboConsumerSofaTracer = new DubboConsumerSofaTracer("dubbo-client"); + dubboConsumerSofaTracer = new DubboConsumerSofaTracer( + ComponentNameConstants.DUBBO_CLIENT); } } } diff --git a/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/tracer/DubboProviderSofaTracer.java b/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/tracer/DubboProviderSofaTracer.java index b02dd871..fcd1cb19 100644 --- a/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/tracer/DubboProviderSofaTracer.java +++ b/sofa-tracer-plugins/sofa-tracer-dubbo-plugin/src/main/java/com/alipay/sofa/tracer/plugins/dubbo/tracer/DubboProviderSofaTracer.java @@ -18,6 +18,7 @@ import com.alipay.common.tracer.core.appender.encoder.SpanEncoder; import com.alipay.common.tracer.core.configuration.SofaTracerConfiguration; +import com.alipay.common.tracer.core.constants.ComponentNameConstants; import com.alipay.common.tracer.core.reporter.stat.AbstractSofaTracerStatisticReporter; import com.alipay.common.tracer.core.span.SofaTracerSpan; import com.alipay.common.tracer.core.tracer.AbstractServerTracer; @@ -37,7 +38,8 @@ public static DubboProviderSofaTracer getDubboProviderSofaTracerSingleton() { if (dubboProviderSofaTracer == null) { synchronized (DubboProviderSofaTracer.class) { if (dubboProviderSofaTracer == null) { - dubboProviderSofaTracer = new DubboProviderSofaTracer("dubbo-server"); + dubboProviderSofaTracer = new DubboProviderSofaTracer( + ComponentNameConstants.DUBBO_SERVER); } } } diff --git a/sofa-tracer-plugins/sofa-tracer-httpclient-plugin/src/main/java/com/alipay/sofa/tracer/plugins/httpclient/HttpClientDigestJsonEncoder.java b/sofa-tracer-plugins/sofa-tracer-httpclient-plugin/src/main/java/com/alipay/sofa/tracer/plugins/httpclient/HttpClientDigestJsonEncoder.java index 1203131d..8fa696c0 100644 --- a/sofa-tracer-plugins/sofa-tracer-httpclient-plugin/src/main/java/com/alipay/sofa/tracer/plugins/httpclient/HttpClientDigestJsonEncoder.java +++ b/sofa-tracer-plugins/sofa-tracer-httpclient-plugin/src/main/java/com/alipay/sofa/tracer/plugins/httpclient/HttpClientDigestJsonEncoder.java @@ -38,7 +38,7 @@ public class HttpClientDigestJsonEncoder extends AbstractDigestSpanEncoder { public String encode(SofaTracerSpan span) throws IOException { JsonStringBuilder jsonStringBuilder = new JsonStringBuilder(); //span end time - jsonStringBuilder.appendBegin("time", Timestamp.format(span.getEndTime())); + jsonStringBuilder.appendBegin(CommonSpanTags.TIME, Timestamp.format(span.getEndTime())); appendSlot(jsonStringBuilder, span); return jsonStringBuilder.toString(); } @@ -51,9 +51,9 @@ private void appendSlot(JsonStringBuilder jsonStringBuilder, SofaTracerSpan sofa jsonStringBuilder .append(CommonSpanTags.LOCAL_APP, tagWithStr.get(CommonSpanTags.LOCAL_APP)); //TraceId - jsonStringBuilder.append("traceId", context.getTraceId()); + jsonStringBuilder.append(CommonSpanTags.TRACE_ID, context.getTraceId()); //SpanId - jsonStringBuilder.append("spanId", context.getSpanId()); + jsonStringBuilder.append(CommonSpanTags.SPAN_ID, context.getSpanId()); //URL jsonStringBuilder.append(CommonSpanTags.REQUEST_URL, tagWithStr.get(CommonSpanTags.REQUEST_URL)); @@ -71,7 +71,7 @@ private void appendSlot(JsonStringBuilder jsonStringBuilder, SofaTracerSpan sofa jsonStringBuilder.append(CommonSpanTags.RESP_SIZE, (responseSize == null ? 0L : responseSize.longValue())); //time-consuming ms - jsonStringBuilder.append("time.cost.milliseconds", + jsonStringBuilder.append(CommonSpanTags.TIME_COST_MILLISECONDS, (sofaTracerSpan.getEndTime() - sofaTracerSpan.getStartTime())); jsonStringBuilder.append(CommonSpanTags.CURRENT_THREAD_NAME, tagWithStr.get(CommonSpanTags.CURRENT_THREAD_NAME)); @@ -84,6 +84,7 @@ private void appendSlot(JsonStringBuilder jsonStringBuilder, SofaTracerSpan sofa private void appendBaggage(JsonStringBuilder jsonStringBuilder, SofaTracerSpanContext sofaTracerSpanContext) { //baggage - jsonStringBuilder.appendEnd("baggage", baggageSerialized(sofaTracerSpanContext)); + jsonStringBuilder.appendEnd(CommonSpanTags.BAGGAGE, + baggageSerialized(sofaTracerSpanContext)); } } \ No newline at end of file diff --git a/sofa-tracer-plugins/sofa-tracer-httpclient-plugin/src/main/java/com/alipay/sofa/tracer/plugins/httpclient/HttpClientStatJsonReporter.java b/sofa-tracer-plugins/sofa-tracer-httpclient-plugin/src/main/java/com/alipay/sofa/tracer/plugins/httpclient/HttpClientStatJsonReporter.java index b767dade..46d8343a 100644 --- a/sofa-tracer-plugins/sofa-tracer-httpclient-plugin/src/main/java/com/alipay/sofa/tracer/plugins/httpclient/HttpClientStatJsonReporter.java +++ b/sofa-tracer-plugins/sofa-tracer-httpclient-plugin/src/main/java/com/alipay/sofa/tracer/plugins/httpclient/HttpClientStatJsonReporter.java @@ -20,6 +20,7 @@ import com.alipay.common.tracer.core.appender.file.LoadTestAwareAppender; import com.alipay.common.tracer.core.appender.self.SelfLog; import com.alipay.common.tracer.core.appender.self.Timestamp; +import com.alipay.common.tracer.core.constants.SofaTracerConstant; import com.alipay.common.tracer.core.reporter.stat.AbstractSofaTracerStatisticReporter; import com.alipay.common.tracer.core.reporter.stat.model.StatKey; import com.alipay.common.tracer.core.reporter.stat.model.StatMapKey; @@ -60,7 +61,8 @@ public void doReportStat(SofaTracerSpan sofaTracerSpan) { String resultCode = tagsWithStr.get(CommonSpanTags.RESULT_CODE); boolean success = (resultCode != null && resultCode.length() > 0 && this .isHttpOrMvcSuccess(resultCode)); - statKey.setResult(success ? "true" : "false"); + statKey.setResult(success ? SofaTracerConstant.STAT_FLAG_SUCCESS + : SofaTracerConstant.STAT_FLAG_FAILS); //end statKey.setEnd(TracerUtils.getLoadTestMark(sofaTracerSpan)); //value the count and duration @@ -83,13 +85,13 @@ public void print(StatKey statKey, long[] values) { try { jsonBuffer.reset(); jsonBuffer.appendBegin(); - jsonBuffer.append("time", Timestamp.currentTime()); - jsonBuffer.append("stat.key", this.statKeySplit(statMapKey)); - jsonBuffer.append("count", values[0]); - jsonBuffer.append("total.cost.milliseconds", values[1]); - jsonBuffer.append("success", statMapKey.getResult()); + jsonBuffer.append(CommonSpanTags.TIME, Timestamp.currentTime()); + jsonBuffer.append(CommonSpanTags.STAT_KEY, this.statKeySplit(statMapKey)); + jsonBuffer.append(CommonSpanTags.COUNT, values[0]); + jsonBuffer.append(CommonSpanTags.TOTAL_COST_MILLISECONDS, values[1]); + jsonBuffer.append(CommonSpanTags.SUCCESS, statMapKey.getResult()); //pressure - jsonBuffer.appendEnd("load.test", statMapKey.getEnd()); + jsonBuffer.appendEnd(CommonSpanTags.LOAD_TEST, statMapKey.getEnd()); if (appender instanceof LoadTestAwareAppender) { ((LoadTestAwareAppender) appender).append(jsonBuffer.toString(), diff --git a/sofa-tracer-plugins/sofa-tracer-httpclient-plugin/src/main/java/com/alipay/sofa/tracer/plugins/httpclient/HttpClientTracer.java b/sofa-tracer-plugins/sofa-tracer-httpclient-plugin/src/main/java/com/alipay/sofa/tracer/plugins/httpclient/HttpClientTracer.java index 5a20b328..c76ff189 100644 --- a/sofa-tracer-plugins/sofa-tracer-httpclient-plugin/src/main/java/com/alipay/sofa/tracer/plugins/httpclient/HttpClientTracer.java +++ b/sofa-tracer-plugins/sofa-tracer-httpclient-plugin/src/main/java/com/alipay/sofa/tracer/plugins/httpclient/HttpClientTracer.java @@ -18,6 +18,7 @@ import com.alipay.common.tracer.core.appender.encoder.SpanEncoder; import com.alipay.common.tracer.core.configuration.SofaTracerConfiguration; +import com.alipay.common.tracer.core.constants.ComponentNameConstants; import com.alipay.common.tracer.core.reporter.stat.AbstractSofaTracerStatisticReporter; import com.alipay.common.tracer.core.span.SofaTracerSpan; import com.alipay.common.tracer.core.tracer.AbstractClientTracer; @@ -48,7 +49,7 @@ public static HttpClientTracer getHttpClientTracerSingleton() { } protected HttpClientTracer() { - super("httpclient"); + super(ComponentNameConstants.HTTP_CLIENT); } @Override diff --git a/sofa-tracer-plugins/sofa-tracer-okhttp-plugin/src/main/java/com/alipay/sofa/tracer/plugins/okhttp/OkHttpDigestJsonEncoder.java b/sofa-tracer-plugins/sofa-tracer-okhttp-plugin/src/main/java/com/alipay/sofa/tracer/plugins/okhttp/OkHttpDigestJsonEncoder.java index 9755218f..58b06642 100644 --- a/sofa-tracer-plugins/sofa-tracer-okhttp-plugin/src/main/java/com/alipay/sofa/tracer/plugins/okhttp/OkHttpDigestJsonEncoder.java +++ b/sofa-tracer-plugins/sofa-tracer-okhttp-plugin/src/main/java/com/alipay/sofa/tracer/plugins/okhttp/OkHttpDigestJsonEncoder.java @@ -37,7 +37,7 @@ public class OkHttpDigestJsonEncoder extends AbstractDigestSpanEncoder { public String encode(SofaTracerSpan span) throws IOException { JsonStringBuilder jsonStringBuilder = new JsonStringBuilder(); //span end time - jsonStringBuilder.appendBegin("time", Timestamp.format(span.getEndTime())); + jsonStringBuilder.appendBegin(CommonSpanTags.TIME, Timestamp.format(span.getEndTime())); appendSlot(jsonStringBuilder, span); return jsonStringBuilder.toString(); } @@ -50,9 +50,9 @@ private void appendSlot(JsonStringBuilder jsonStringBuilder, SofaTracerSpan sofa jsonStringBuilder .append(CommonSpanTags.LOCAL_APP, tagWithStr.get(CommonSpanTags.LOCAL_APP)); //TraceId - jsonStringBuilder.append("traceId", context.getTraceId()); + jsonStringBuilder.append(CommonSpanTags.TRACE_ID, context.getTraceId()); //SpanId - jsonStringBuilder.append("spanId", context.getSpanId()); + jsonStringBuilder.append(CommonSpanTags.SPAN_ID, context.getSpanId()); //URL jsonStringBuilder.append(CommonSpanTags.REQUEST_URL, tagWithStr.get(CommonSpanTags.REQUEST_URL)); @@ -70,7 +70,7 @@ private void appendSlot(JsonStringBuilder jsonStringBuilder, SofaTracerSpan sofa jsonStringBuilder.append(CommonSpanTags.RESP_SIZE, (responseSize == null ? 0L : responseSize.longValue())); //time-consuming ms - jsonStringBuilder.append("time.cost.milliseconds", + jsonStringBuilder.append(CommonSpanTags.TIME_COST_MILLISECONDS, (sofaTracerSpan.getEndTime() - sofaTracerSpan.getStartTime())); jsonStringBuilder.append(CommonSpanTags.CURRENT_THREAD_NAME, tagWithStr.get(CommonSpanTags.CURRENT_THREAD_NAME)); @@ -83,6 +83,7 @@ private void appendSlot(JsonStringBuilder jsonStringBuilder, SofaTracerSpan sofa private void appendBaggage(JsonStringBuilder jsonStringBuilder, SofaTracerSpanContext sofaTracerSpanContext) { //baggage - jsonStringBuilder.appendEnd("baggage", baggageSerialized(sofaTracerSpanContext)); + jsonStringBuilder.appendEnd(CommonSpanTags.BAGGAGE, + baggageSerialized(sofaTracerSpanContext)); } } \ No newline at end of file diff --git a/sofa-tracer-plugins/sofa-tracer-okhttp-plugin/src/main/java/com/alipay/sofa/tracer/plugins/okhttp/OkHttpStatJsonReporter.java b/sofa-tracer-plugins/sofa-tracer-okhttp-plugin/src/main/java/com/alipay/sofa/tracer/plugins/okhttp/OkHttpStatJsonReporter.java index bad7bc65..f341a359 100644 --- a/sofa-tracer-plugins/sofa-tracer-okhttp-plugin/src/main/java/com/alipay/sofa/tracer/plugins/okhttp/OkHttpStatJsonReporter.java +++ b/sofa-tracer-plugins/sofa-tracer-okhttp-plugin/src/main/java/com/alipay/sofa/tracer/plugins/okhttp/OkHttpStatJsonReporter.java @@ -20,6 +20,7 @@ import com.alipay.common.tracer.core.appender.file.LoadTestAwareAppender; import com.alipay.common.tracer.core.appender.self.SelfLog; import com.alipay.common.tracer.core.appender.self.Timestamp; +import com.alipay.common.tracer.core.constants.SofaTracerConstant; import com.alipay.common.tracer.core.reporter.stat.AbstractSofaTracerStatisticReporter; import com.alipay.common.tracer.core.reporter.stat.model.StatKey; import com.alipay.common.tracer.core.reporter.stat.model.StatMapKey; @@ -58,7 +59,8 @@ public void doReportStat(SofaTracerSpan sofaTracerSpan) { String resultCode = tagsWithStr.get(CommonSpanTags.RESULT_CODE); boolean success = (resultCode != null && resultCode.length() > 0 && this .isHttpOrMvcSuccess(resultCode)); - statKey.setResult(success ? "true" : "false"); + statKey.setResult(success ? SofaTracerConstant.STAT_FLAG_SUCCESS + : SofaTracerConstant.STAT_FLAG_FAILS); //end statKey.setEnd(TracerUtils.getLoadTestMark(sofaTracerSpan)); //value the count and duration @@ -81,13 +83,13 @@ public void print(StatKey statKey, long[] values) { try { jsonBuffer.reset(); jsonBuffer.appendBegin(); - jsonBuffer.append("time", Timestamp.currentTime()); - jsonBuffer.append("stat.key", this.statKeySplit(statMapKey)); - jsonBuffer.append("count", values[0]); - jsonBuffer.append("total.cost.milliseconds", values[1]); - jsonBuffer.append("success", statMapKey.getResult()); + jsonBuffer.append(CommonSpanTags.TIME, Timestamp.currentTime()); + jsonBuffer.append(CommonSpanTags.STAT_KEY, this.statKeySplit(statMapKey)); + jsonBuffer.append(CommonSpanTags.COUNT, values[0]); + jsonBuffer.append(CommonSpanTags.TOTAL_COST_MILLISECONDS, values[1]); + jsonBuffer.append(CommonSpanTags.SUCCESS, statMapKey.getResult()); //pressure - jsonBuffer.appendEnd("load.test", statMapKey.getEnd()); + jsonBuffer.appendEnd(CommonSpanTags.LOAD_TEST, statMapKey.getEnd()); if (appender instanceof LoadTestAwareAppender) { ((LoadTestAwareAppender) appender).append(jsonBuffer.toString(), diff --git a/sofa-tracer-plugins/sofa-tracer-okhttp-plugin/src/main/java/com/alipay/sofa/tracer/plugins/okhttp/OkHttpTracer.java b/sofa-tracer-plugins/sofa-tracer-okhttp-plugin/src/main/java/com/alipay/sofa/tracer/plugins/okhttp/OkHttpTracer.java index 874378a6..5793002e 100644 --- a/sofa-tracer-plugins/sofa-tracer-okhttp-plugin/src/main/java/com/alipay/sofa/tracer/plugins/okhttp/OkHttpTracer.java +++ b/sofa-tracer-plugins/sofa-tracer-okhttp-plugin/src/main/java/com/alipay/sofa/tracer/plugins/okhttp/OkHttpTracer.java @@ -18,6 +18,7 @@ import com.alipay.common.tracer.core.appender.encoder.SpanEncoder; import com.alipay.common.tracer.core.configuration.SofaTracerConfiguration; +import com.alipay.common.tracer.core.constants.ComponentNameConstants; import com.alipay.common.tracer.core.reporter.stat.AbstractSofaTracerStatisticReporter; import com.alipay.common.tracer.core.span.SofaTracerSpan; import com.alipay.common.tracer.core.tracer.AbstractClientTracer; @@ -31,7 +32,7 @@ public class OkHttpTracer extends AbstractClientTracer { private volatile static OkHttpTracer okHttpTracer = null; protected OkHttpTracer() { - super("okhttp"); + super(ComponentNameConstants.OK_HTTP); } public static OkHttpTracer getOkHttpTracerSingleton() { diff --git a/sofa-tracer-plugins/sofa-tracer-resttmplate-plugin/src/main/java/com/sofa/alipay/tracer/plugins/rest/RestTemplateDigestJsonEncoder.java b/sofa-tracer-plugins/sofa-tracer-resttmplate-plugin/src/main/java/com/sofa/alipay/tracer/plugins/rest/RestTemplateDigestJsonEncoder.java index 1771673c..2938e53d 100644 --- a/sofa-tracer-plugins/sofa-tracer-resttmplate-plugin/src/main/java/com/sofa/alipay/tracer/plugins/rest/RestTemplateDigestJsonEncoder.java +++ b/sofa-tracer-plugins/sofa-tracer-resttmplate-plugin/src/main/java/com/sofa/alipay/tracer/plugins/rest/RestTemplateDigestJsonEncoder.java @@ -37,7 +37,7 @@ public class RestTemplateDigestJsonEncoder extends AbstractDigestSpanEncoder { public String encode(SofaTracerSpan span) throws IOException { JsonStringBuilder jsonStringBuilder = new JsonStringBuilder(); //span end time - jsonStringBuilder.appendBegin("time", Timestamp.format(span.getEndTime())); + jsonStringBuilder.appendBegin(CommonSpanTags.TIME, Timestamp.format(span.getEndTime())); appendSlot(jsonStringBuilder, span); return jsonStringBuilder.toString(); } @@ -50,9 +50,9 @@ private void appendSlot(JsonStringBuilder jsonStringBuilder, SofaTracerSpan sofa jsonStringBuilder .append(CommonSpanTags.LOCAL_APP, tagWithStr.get(CommonSpanTags.LOCAL_APP)); //TraceId - jsonStringBuilder.append("traceId", context.getTraceId()); + jsonStringBuilder.append(CommonSpanTags.TRACE_ID, context.getTraceId()); //SpanId - jsonStringBuilder.append("spanId", context.getSpanId()); + jsonStringBuilder.append(CommonSpanTags.SPAN_ID, context.getSpanId()); //URL jsonStringBuilder.append(CommonSpanTags.REQUEST_URL, tagWithStr.get(CommonSpanTags.REQUEST_URL)); @@ -66,7 +66,7 @@ private void appendSlot(JsonStringBuilder jsonStringBuilder, SofaTracerSpan sofa jsonStringBuilder.append(CommonSpanTags.RESP_SIZE, (responseSize == null ? 0L : responseSize.longValue())); //time-consuming ms - jsonStringBuilder.append("time.cost.milliseconds", + jsonStringBuilder.append(CommonSpanTags.TIME_COST_MILLISECONDS, (sofaTracerSpan.getEndTime() - sofaTracerSpan.getStartTime())); jsonStringBuilder.append(CommonSpanTags.CURRENT_THREAD_NAME, tagWithStr.get(CommonSpanTags.CURRENT_THREAD_NAME)); @@ -79,6 +79,7 @@ private void appendSlot(JsonStringBuilder jsonStringBuilder, SofaTracerSpan sofa private void appendBaggage(JsonStringBuilder jsonStringBuilder, SofaTracerSpanContext sofaTracerSpanContext) { //baggage - jsonStringBuilder.appendEnd("baggage", baggageSerialized(sofaTracerSpanContext)); + jsonStringBuilder.appendEnd(CommonSpanTags.BAGGAGE, + baggageSerialized(sofaTracerSpanContext)); } } diff --git a/sofa-tracer-plugins/sofa-tracer-resttmplate-plugin/src/main/java/com/sofa/alipay/tracer/plugins/rest/RestTemplateStatJsonReporter.java b/sofa-tracer-plugins/sofa-tracer-resttmplate-plugin/src/main/java/com/sofa/alipay/tracer/plugins/rest/RestTemplateStatJsonReporter.java index 05cfe512..065a1955 100644 --- a/sofa-tracer-plugins/sofa-tracer-resttmplate-plugin/src/main/java/com/sofa/alipay/tracer/plugins/rest/RestTemplateStatJsonReporter.java +++ b/sofa-tracer-plugins/sofa-tracer-resttmplate-plugin/src/main/java/com/sofa/alipay/tracer/plugins/rest/RestTemplateStatJsonReporter.java @@ -20,6 +20,7 @@ import com.alipay.common.tracer.core.appender.file.LoadTestAwareAppender; import com.alipay.common.tracer.core.appender.self.SelfLog; import com.alipay.common.tracer.core.appender.self.Timestamp; +import com.alipay.common.tracer.core.constants.SofaTracerConstant; import com.alipay.common.tracer.core.reporter.stat.AbstractSofaTracerStatisticReporter; import com.alipay.common.tracer.core.reporter.stat.model.StatKey; import com.alipay.common.tracer.core.reporter.stat.model.StatMapKey; @@ -54,7 +55,8 @@ public void doReportStat(SofaTracerSpan sofaTracerSpan) { String resultCode = tagsWithStr.get(CommonSpanTags.RESULT_CODE); boolean success = (resultCode != null && resultCode.length() > 0 && this .isHttpOrMvcSuccess(resultCode)); - statKey.setResult(success ? "true" : "false"); + statKey.setResult(success ? SofaTracerConstant.STAT_FLAG_SUCCESS + : SofaTracerConstant.STAT_FLAG_FAILS); //pressure mark statKey.setLoadTest(TracerUtils.isLoadTest(sofaTracerSpan)); //end @@ -79,13 +81,13 @@ public void print(StatKey statKey, long[] values) { try { jsonBuffer.reset(); jsonBuffer.appendBegin(); - jsonBuffer.append("time", Timestamp.currentTime()); - jsonBuffer.append("stat.key", this.statKeySplit(statMapKey)); - jsonBuffer.append("count", values[0]); - jsonBuffer.append("total.cost.milliseconds", values[1]); - jsonBuffer.append("success", statMapKey.getResult()); + jsonBuffer.append(CommonSpanTags.TIME, Timestamp.currentTime()); + jsonBuffer.append(CommonSpanTags.STAT_KEY, this.statKeySplit(statMapKey)); + jsonBuffer.append(CommonSpanTags.COUNT, values[0]); + jsonBuffer.append(CommonSpanTags.TOTAL_COST_MILLISECONDS, values[1]); + jsonBuffer.append(CommonSpanTags.SUCCESS, statMapKey.getResult()); //pressure - jsonBuffer.appendEnd("load.test", statMapKey.getEnd()); + jsonBuffer.appendEnd(CommonSpanTags.LOAD_TEST, statMapKey.getEnd()); if (appender instanceof LoadTestAwareAppender) { ((LoadTestAwareAppender) appender).append(jsonBuffer.toString(), diff --git a/sofa-tracer-plugins/sofa-tracer-resttmplate-plugin/src/main/java/com/sofa/alipay/tracer/plugins/rest/RestTemplateTracer.java b/sofa-tracer-plugins/sofa-tracer-resttmplate-plugin/src/main/java/com/sofa/alipay/tracer/plugins/rest/RestTemplateTracer.java index 2f1c44db..93534752 100644 --- a/sofa-tracer-plugins/sofa-tracer-resttmplate-plugin/src/main/java/com/sofa/alipay/tracer/plugins/rest/RestTemplateTracer.java +++ b/sofa-tracer-plugins/sofa-tracer-resttmplate-plugin/src/main/java/com/sofa/alipay/tracer/plugins/rest/RestTemplateTracer.java @@ -18,6 +18,7 @@ import com.alipay.common.tracer.core.appender.encoder.SpanEncoder; import com.alipay.common.tracer.core.configuration.SofaTracerConfiguration; +import com.alipay.common.tracer.core.constants.ComponentNameConstants; import com.alipay.common.tracer.core.reporter.stat.AbstractSofaTracerStatisticReporter; import com.alipay.common.tracer.core.span.SofaTracerSpan; import com.alipay.common.tracer.core.tracer.AbstractClientTracer; @@ -30,7 +31,7 @@ public class RestTemplateTracer extends AbstractClientTracer { protected RestTemplateTracer() { - super("resttemplate"); + super(ComponentNameConstants.REST_TEMPLATE); } @Override diff --git a/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcDigestJsonEncoder.java b/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcDigestJsonEncoder.java index 5b0d7438..1cfeecb8 100644 --- a/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcDigestJsonEncoder.java +++ b/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcDigestJsonEncoder.java @@ -37,7 +37,7 @@ public class SpringMvcDigestJsonEncoder extends AbstractDigestSpanEncoder { @Override public String encode(SofaTracerSpan span) throws IOException { JsonStringBuilder jsonStringBuilder = new JsonStringBuilder(); - jsonStringBuilder.appendBegin("time", Timestamp.format(span.getEndTime())); + jsonStringBuilder.appendBegin(CommonSpanTags.TIME, Timestamp.format(span.getEndTime())); appendSlot(jsonStringBuilder, span); return jsonStringBuilder.toString(); } @@ -50,10 +50,10 @@ private void appendSlot(JsonStringBuilder jsonStringBuilder, SofaTracerSpan sofa jsonStringBuilder .append(CommonSpanTags.LOCAL_APP, tagWithStr.get(CommonSpanTags.LOCAL_APP)); //TraceId - jsonStringBuilder.append("traceId", context.getTraceId()); + jsonStringBuilder.append(CommonSpanTags.TRACE_ID, context.getTraceId()); //RpcId - jsonStringBuilder.append("spanId", context.getSpanId()); - //URL + jsonStringBuilder.append(CommonSpanTags.SPAN_ID, context.getSpanId()); + //请求 URL jsonStringBuilder.append(CommonSpanTags.REQUEST_URL, tagWithStr.get(CommonSpanTags.REQUEST_URL)); //Request method @@ -70,10 +70,10 @@ private void appendSlot(JsonStringBuilder jsonStringBuilder, SofaTracerSpan sofa jsonStringBuilder.append(CommonSpanTags.RESP_SIZE, (responseSize == null ? 0L : responseSize.longValue())); //Request time (MS) - jsonStringBuilder.append("time.cost.milliseconds", + jsonStringBuilder.append(CommonSpanTags.TIME_COST_MILLISECONDS, (sofaTracerSpan.getEndTime() - sofaTracerSpan.getStartTime())); jsonStringBuilder.append(CommonSpanTags.CURRENT_THREAD_NAME, tagWithStr.get(CommonSpanTags.CURRENT_THREAD_NAME)); - jsonStringBuilder.appendEnd("baggage", baggageSerialized(context)); + jsonStringBuilder.appendEnd(CommonSpanTags.BAGGAGE, baggageSerialized(context)); } } \ No newline at end of file diff --git a/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcJsonStatReporter.java b/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcJsonStatReporter.java index b26aadf7..f89c7887 100644 --- a/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcJsonStatReporter.java +++ b/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcJsonStatReporter.java @@ -20,6 +20,7 @@ import com.alipay.common.tracer.core.appender.file.LoadTestAwareAppender; import com.alipay.common.tracer.core.appender.self.SelfLog; import com.alipay.common.tracer.core.appender.self.Timestamp; +import com.alipay.common.tracer.core.constants.SofaTracerConstant; import com.alipay.common.tracer.core.reporter.stat.model.StatMapKey; import com.alipay.common.tracer.core.reporter.stat.model.StatKey; import com.alipay.common.tracer.core.span.CommonSpanTags; @@ -56,7 +57,8 @@ public void doReportStat(SofaTracerSpan sofaTracerSpan) { String resultCode = tagsWithStr.get(CommonSpanTags.RESULT_CODE); boolean success = (resultCode != null && resultCode.length() > 0 && this .isHttpOrMvcSuccess(resultCode)); - statKey.setResult(success ? "true" : "false"); + statKey.setResult(success ? SofaTracerConstant.STAT_FLAG_SUCCESS + : SofaTracerConstant.STAT_FLAG_FAILS); //end statKey.setEnd(TracerUtils.getLoadTestMark(sofaTracerSpan)); //duration @@ -79,13 +81,13 @@ public void print(StatKey statKey, long[] values) { try { jsonBuffer.reset(); jsonBuffer.appendBegin(); - jsonBuffer.append("time", Timestamp.currentTime()); - jsonBuffer.append("stat.key", this.statKeySplit(statMapKey)); - jsonBuffer.append("count", values[0]); - jsonBuffer.append("total.cost.milliseconds", values[1]); - jsonBuffer.append("success", statMapKey.getResult()); + jsonBuffer.append(CommonSpanTags.TIME, Timestamp.currentTime()); + jsonBuffer.append(CommonSpanTags.STAT_KEY, this.statKeySplit(statMapKey)); + jsonBuffer.append(CommonSpanTags.COUNT, values[0]); + jsonBuffer.append(CommonSpanTags.TOTAL_COST_MILLISECONDS, values[1]); + jsonBuffer.append(CommonSpanTags.SUCCESS, statMapKey.getResult()); //pressure test mark - jsonBuffer.appendEnd("load.test", statMapKey.getEnd()); + jsonBuffer.appendEnd(CommonSpanTags.LOAD_TEST, statMapKey.getEnd()); if (appender instanceof LoadTestAwareAppender) { ((LoadTestAwareAppender) appender).append(jsonBuffer.toString(), diff --git a/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcStatReporter.java b/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcStatReporter.java index 94335014..7a5122d3 100644 --- a/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcStatReporter.java +++ b/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcStatReporter.java @@ -16,6 +16,7 @@ */ package com.alipay.sofa.tracer.plugins.springmvc; +import com.alipay.common.tracer.core.constants.SofaTracerConstant; import com.alipay.common.tracer.core.reporter.stat.AbstractSofaTracerStatisticReporter; import com.alipay.common.tracer.core.reporter.stat.model.StatKey; import com.alipay.common.tracer.core.span.CommonSpanTags; @@ -48,7 +49,8 @@ public void doReportStat(SofaTracerSpan sofaTracerSpan) { String resultCode = tagsWithStr.get(CommonSpanTags.RESULT_CODE); boolean success = (resultCode != null && resultCode.length() > 0 && this .isHttpOrMvcSuccess(resultCode)); - statKey.setResult(success ? "Y" : "N"); + statKey.setResult(success ? SofaTracerConstant.DIGEST_FLAG_SUCCESS + : SofaTracerConstant.DIGEST_FLAG_FAILS); statKey.setEnd(buildString(new String[] { TracerUtils.getLoadTestMark(sofaTracerSpan) })); //pressure mark statKey.setLoadTest(TracerUtils.isLoadTest(sofaTracerSpan)); diff --git a/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcTracer.java b/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcTracer.java index 7d6dc6f6..ca3344f6 100644 --- a/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcTracer.java +++ b/sofa-tracer-plugins/sofa-tracer-springmvc-plugin/src/main/java/com/alipay/sofa/tracer/plugins/springmvc/SpringMvcTracer.java @@ -18,6 +18,7 @@ import com.alipay.common.tracer.core.appender.encoder.SpanEncoder; import com.alipay.common.tracer.core.configuration.SofaTracerConfiguration; +import com.alipay.common.tracer.core.constants.ComponentNameConstants; import com.alipay.common.tracer.core.reporter.stat.AbstractSofaTracerStatisticReporter; import com.alipay.common.tracer.core.span.SofaTracerSpan; import com.alipay.common.tracer.core.tracer.AbstractServerTracer; @@ -50,7 +51,7 @@ public static SpringMvcTracer getSpringMvcTracerSingleton() { } private SpringMvcTracer() { - super("springmvc"); + super(ComponentNameConstants.SPRING_MVC); } @Override diff --git a/tracer-core/src/main/java/com/alipay/common/tracer/core/constants/ComponentNameConstants.java b/tracer-core/src/main/java/com/alipay/common/tracer/core/constants/ComponentNameConstants.java new file mode 100644 index 00000000..e77f8047 --- /dev/null +++ b/tracer-core/src/main/java/com/alipay/common/tracer/core/constants/ComponentNameConstants.java @@ -0,0 +1,39 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.alipay.common.tracer.core.constants; + +/** + * Component Name Constants + * @author: guolei.sgl (guolei.sgl@antfin.com) 2019/4/8 9:16 PM + * @since: + **/ +public class ComponentNameConstants { + + public static final String DATA_SOURCE = "dataSource"; + + public static final String DUBBO_CLIENT = "dubbo-client"; + + public static final String DUBBO_SERVER = "dubbo-server"; + + public static final String HTTP_CLIENT = "httpclient"; + + public static final String OK_HTTP = "okhttp"; + + public static final String REST_TEMPLATE = "resttemplate"; + + public static final String SPRING_MVC = "springmvc"; +} diff --git a/tracer-core/src/main/java/com/alipay/common/tracer/core/constants/SofaTracerConstant.java b/tracer-core/src/main/java/com/alipay/common/tracer/core/constants/SofaTracerConstant.java index 0c66680a..819b733c 100644 --- a/tracer-core/src/main/java/com/alipay/common/tracer/core/constants/SofaTracerConstant.java +++ b/tracer-core/src/main/java/com/alipay/common/tracer/core/constants/SofaTracerConstant.java @@ -44,8 +44,6 @@ public class SofaTracerConstant { public static final String RPC_2_JVM_DIGEST_LOG_NAME = "rpc-2-jvm-digest.log"; - //******************* span encoder constant start ***************** - /** * Time-consuming unit */ @@ -85,4 +83,41 @@ public class SofaTracerConstant { * Return value in case of non-pressure measurement {@link AbstractSofaTracerStatisticReporter} */ public static final String NON_LOAD_TEST_VALUE = "F"; + + /** + * Result code for time out + */ + public static final String RESULT_CODE_TIME_OUT = "03"; + /** + * Result code for success + */ + public static final String RESULT_CODE_SUCCESS = "00"; + /** + * Result code for failure + */ + public static final String RESULT_CODE_ERROR = "99"; + /** + * Result state for success + */ + public static final String RESULT_SUCCESS = "success"; + /** + * Result state for failed + */ + public static final String RESULT_FAILED = "failed"; + /** + * digest result state for success + */ + public static final String DIGEST_FLAG_SUCCESS = "Y"; + /** + * digest result state for failure + */ + public static final String DIGEST_FLAG_FAILS = "N"; + /** + * stat result state for success + */ + public static final String STAT_FLAG_SUCCESS = "true"; + /** + * stat result state for failure + */ + public static final String STAT_FLAG_FAILS = "false"; } diff --git a/tracer-core/src/main/java/com/alipay/common/tracer/core/span/CommonSpanTags.java b/tracer-core/src/main/java/com/alipay/common/tracer/core/span/CommonSpanTags.java index 8151dd6d..2221534d 100644 --- a/tracer-core/src/main/java/com/alipay/common/tracer/core/span/CommonSpanTags.java +++ b/tracer-core/src/main/java/com/alipay/common/tracer/core/span/CommonSpanTags.java @@ -122,4 +122,54 @@ public class CommonSpanTags { * SERVER_DESERIALIZE_TIME records the rpc server deserialize the request body time */ public static final String SERVER_DESERIALIZE_TIME = "server.deserialize.time"; + + /** + * SPAN_ID records the current span's id + */ + public static final String SPAN_ID = "spanId"; + + /** + * TRACE_ID records the current span's traceId + */ + public static final String TRACE_ID = "traceId"; + + /** + * BAGGAGE records the span's baggage + */ + public static final String BAGGAGE = "baggage"; + + /** + * TIME records the current span's begin time + */ + public static final String TIME = "time"; + + /** + * TIME_COST_MILLISECONDS records the current span's cost time + */ + public static final String TIME_COST_MILLISECONDS = "time.cost.milliseconds"; + + /** + * TOTAL_COST_MILLISECONDS records the span's cost time period + */ + public static final String TOTAL_COST_MILLISECONDS = "total.cost.milliseconds"; + + /** + * STAT_KEY is the span's stat log key for stat.key + */ + public static final String STAT_KEY = "stat.key"; + + /** + * COUNT is the span's stat log key for count + */ + public static final String COUNT = "count"; + + /** + * SUCCESS is the span's stat log key for success + */ + public static final String SUCCESS = "success"; + + /** + * LOAD_TEST is the span's stat log key for load.test + */ + public static final String LOAD_TEST = "load.test"; } \ No newline at end of file