in exporters/trace/src/main/java/com/google/cloud/opentelemetry/trace/TraceTranslator.java [206:229]
private static <T> AttributeValue toAttributeValueProto(AttributeKey<?> key, Object value) {
AttributeValue.Builder builder = AttributeValue.newBuilder();
switch (key.getType()) {
case STRING:
builder.setStringValue(toTruncatableStringProto((String) value));
break;
case BOOLEAN:
builder.setBoolValue((Boolean) value);
break;
case LONG:
builder.setIntValue((Long) value);
break;
case DOUBLE:
builder.setStringValue(toTruncatableStringProto(String.valueOf((value))));
break;
case STRING_ARRAY:
case BOOLEAN_ARRAY:
case LONG_ARRAY:
case DOUBLE_ARRAY:
builder.setStringValue(toTruncatableStringProto(jsonString((List<?>) value)));
break;
}
return builder.build();
}