sb.append(",\"error\":").append("true"); Map<String, AttributeValue> attributeMap = span.getAttributes().getAttributeMap(); if (attributeMap.size() > 0) { StringBuilder dataSb = new StringBuilder();
.orElse(null); final Map<String, AttributeValue> attributes = sd.getAttributes().getAttributeMap(); final Map<String, String> meta = attributes.isEmpty() ? new HashMap<>() : attributesToMeta(attributes);
"", htmlEscaper().escape(renderAttributes(span.getAttributes().getAttributeMap())));
assertThat(spanData.getAttributes().getDroppedAttributesCount()) .isEqualTo(maxNumberOfAttributes); assertThat(spanData.getAttributes().getAttributeMap().size()).isEqualTo(maxNumberOfAttributes); for (int i = 0; i < maxNumberOfAttributes; i++) { assertThat( spanData .getAttributes() .getAttributeMap() .get("MyStringAttributeKey" + (i + maxNumberOfAttributes))) assertThat(spanData.getAttributes().getDroppedAttributesCount()) .isEqualTo(maxNumberOfAttributes); assertThat(spanData.getAttributes().getAttributeMap().size()).isEqualTo(maxNumberOfAttributes); for (int i = 0; i < maxNumberOfAttributes; i++) { assertThat( spanData .getAttributes() .getAttributeMap() .get("MyStringAttributeKey" + (i + maxNumberOfAttributes)))
assertThat(spanData.getAttributes().getDroppedAttributesCount()) .isEqualTo(maxNumberOfAttributes); assertThat(spanData.getAttributes().getAttributeMap().size()).isEqualTo(maxNumberOfAttributes); for (int i = 0; i < maxNumberOfAttributes; i++) { assertThat( spanData .getAttributes() .getAttributeMap() .get("MyStringAttributeKey" + (i + maxNumberOfAttributes))) assertThat(spanData.getAttributes().getDroppedAttributesCount()) .isEqualTo(maxNumberOfAttributes * 3 / 2); assertThat(spanData.getAttributes().getAttributeMap().size()).isEqualTo(maxNumberOfAttributes); .getAttributes() .getAttributeMap() .get("MyStringAttributeKey" + (i + maxNumberOfAttributes * 3 / 2))) assertThat(spanData.getAttributes().getAttributeMap().get("MyStringAttributeKey" + i)) .isEqualTo(AttributeValue.longAttributeValue(i));
assertThat(spanData.getName()).isEqualTo(SPAN_NAME); assertThat(spanData.getStartTimestamp()).isEqualTo(startTimestamp); assertThat(spanData.getAttributes().getAttributeMap().isEmpty()).isTrue(); assertThat(spanData.getAnnotations().getEvents().isEmpty()).isTrue(); assertThat(spanData.getNetworkEvents().getEvents().isEmpty()).isTrue();
@Test public void deprecatedAddAttributesStillWorks() { RecordEventsSpanImpl span = RecordEventsSpanImpl.startSpan( spanContext, SPAN_NAME, null, parentSpanId, false, TraceParams.DEFAULT, startEndHandler, timestampConverter, testClock); span.addAttributes(attributes); span.end(); SpanData spanData = span.toSpanData(); assertThat(spanData.getAttributes().getAttributeMap()).isEqualTo(attributes); }
assertThat(spanData.getName()).isEqualTo(SPAN_NAME); assertThat(spanData.getStartTimestamp()).isEqualTo(startTimestamp); assertThat(spanData.getAttributes()).isEqualTo(attributes); assertThat(spanData.getAnnotations()).isEqualTo(annotations); assertThat(spanData.getNetworkEvents()).isEqualTo(networkEvents);
assertThat(spanData.getName()).isEqualTo(SPAN_NAME); assertThat(spanData.getStartTimestamp()).isEqualTo(startTimestamp); assertThat(spanData.getAttributes()).isEqualTo(attributes); assertThat(spanData.getAnnotations()).isEqualTo(annotations); assertThat(spanData.getNetworkEvents()).isEqualTo(networkEvents);
assertThat(spanData.getKind()).isEqualTo(Kind.SERVER); assertThat(spanData.getStartTimestamp()).isEqualTo(startTimestamp); assertThat(spanData.getAttributes()).isEqualTo(attributes); assertThat(spanData.getAnnotations()).isEqualTo(annotations); assertThat(spanData.getNetworkEvents()).isEqualTo(networkEvents);
assertThat(spanData.getParentSpanId()).isEqualTo(parentSpanId); assertThat(spanData.getHasRemoteParent()).isTrue(); assertThat(spanData.getAttributes().getDroppedAttributesCount()).isEqualTo(0); assertThat(spanData.getAttributes().getAttributeMap()).isEqualTo(expectedAttributes); assertThat(spanData.getAnnotations().getDroppedEventsCount()).isEqualTo(0); assertThat(spanData.getAnnotations().getEvents().size()).isEqualTo(2);
assertThat(spanData.getParentSpanId()).isEqualTo(parentSpanId); assertThat(spanData.getHasRemoteParent()).isFalse(); assertThat(spanData.getAttributes().getDroppedAttributesCount()).isEqualTo(0); assertThat(spanData.getAttributes().getAttributeMap()).isEqualTo(expectedAttributes); assertThat(spanData.getAnnotations().getDroppedEventsCount()).isEqualTo(0); assertThat(spanData.getAnnotations().getEvents().size()).isEqualTo(2);
SpanData spanData = span.toSpanData(); assertThat(spanData.getStartTimestamp()).isEqualTo(timestamp); assertThat(spanData.getAttributes().getAttributeMap()).isEmpty(); assertThat(spanData.getAnnotations().getEvents()).isEmpty(); assertThat(spanData.getNetworkEvents().getEvents()).isEmpty();
spanData.getAttributes().getAttributeMap().entrySet()) { spanBuilder.putTag(label.getKey(), attributeValueToString(label.getValue()));
private Span spanDataToJaegerThriftSpan(final SpanData spanData) { final long startTimeInMicros = timestampToMicros(spanData.getStartTimestamp()); final long endTimeInMicros = timestampToMicros(spanData.getEndTimestamp()); final SpanContext context = spanData.getContext(); copyToBuffer(context.getTraceId()); return new com.uber.jaeger.thriftjava.Span( traceIdLow(), traceIdHigh(), spanIdToLong(context.getSpanId()), spanIdToLong(spanData.getParentSpanId()), spanData.getName(), optionsToFlags(context.getTraceOptions()), startTimeInMicros, endTimeInMicros - startTimeInMicros) .setReferences(linksToReferences(spanData.getLinks().getLinks())) .setTags( attributesToTags( spanData.getAttributes().getAttributeMap(), spanKindToTag(spanData.getKind()))) .setLogs( timedEventsToLogs( spanData.getAnnotations().getEvents(), spanData.getMessageEvents().getEvents())); }
.setStartTime(toTimestampProto(spanData.getStartTimestamp())) .setAttributes( toAttributesProto(spanData.getAttributes(), resourceLabels, fixedAttributes)) .setTimeEvents( toTimeEventsProto(spanData.getAnnotations(), spanData.getMessageEvents()));
.setStartTime(toTimestampProto(spanData.getStartTimestamp())) .setAttributes( toAttributesProto(spanData.getAttributes(), resourceLabels, fixedAttributes)) .setTimeEvents( toTimeEventsProto(spanData.getAnnotations(), spanData.getMessageEvents()));
.setName(toTruncatableStringProto(spanData.getName())) .setStartTime(toTimestampProto(spanData.getStartTimestamp())) .setAttributes(toAttributesProto(spanData.getAttributes())) .setTimeEvents( toTimeEventsProto(spanData.getAnnotations(), spanData.getMessageEvents()))