Merge pull request #145 from DataDog/tyler/case-insensitive

Ensure that headers are read case insensitive.
This commit is contained in:
Tyler Benson 2017-10-30 13:22:59 -07:00 committed by GitHub
commit cfdbf4c230
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 12 additions and 11 deletions

View File

@ -14,11 +14,11 @@ jobs:
- run:
name: Run Tests
command: ./gradlew clean check --parallel --stacktrace
command: GRADLE_OPTS="-Dorg.gradle.jvmargs=-Xmx1G -Xms512M" ./gradlew clean check --parallel --stacktrace --no-daemon --max-workers=3
- run:
name: Verify Version Scan
command: ./gradlew verifyVersionScan --parallel --stacktrace
command: ./gradlew verifyVersionScan --parallel --stacktrace --no-daemon
- save_cache:
paths:
@ -58,5 +58,5 @@ jobs:
-PbintrayUser=${BINTRAY_USER} \
-PbintrayApiKey=${BINTRAY_API_KEY} \
-PbuildInfo.build.number=${CIRCLE_BUILD_NUM} \
artifactoryPublish --max-workers=1 --stacktrace
artifactoryPublish --max-workers=1 --stacktrace --no-daemon
fi

View File

@ -38,15 +38,16 @@ public class HTTPCodec implements Codec<TextMap> {
for (final Map.Entry<String, String> entry : carrier) {
if (entry.getKey().equals(TRACE_ID_KEY)) {
final String key = entry.getKey().toLowerCase();
if (key.equalsIgnoreCase(TRACE_ID_KEY)) {
traceId = Long.parseLong(entry.getValue());
} else if (entry.getKey().equals(SPAN_ID_KEY)) {
} else if (key.equalsIgnoreCase(SPAN_ID_KEY)) {
spanId = Long.parseLong(entry.getValue());
} else if (entry.getKey().startsWith(OT_BAGGAGE_PREFIX)) {
} else if (key.startsWith(OT_BAGGAGE_PREFIX)) {
if (baggage.isEmpty()) {
baggage = new HashMap<>();
}
baggage.put(entry.getKey().replace(OT_BAGGAGE_PREFIX, ""), decode(entry.getValue()));
baggage.put(key.replace(OT_BAGGAGE_PREFIX, ""), decode(entry.getValue()));
}
}
DDSpanContext context = null;

View File

@ -56,10 +56,10 @@ public class HTTPCodecTest {
final Map<String, String> actual =
new HashMap<String, String>() {
{
put(TRACE_ID_KEY, "1");
put(SPAN_ID_KEY, "2");
put(OT_BAGGAGE_PREFIX + "k1", "v1");
put(OT_BAGGAGE_PREFIX + "k2", "v2");
put(TRACE_ID_KEY.toUpperCase(), "1");
put(SPAN_ID_KEY.toUpperCase(), "2");
put(OT_BAGGAGE_PREFIX.toUpperCase() + "k1", "v1");
put(OT_BAGGAGE_PREFIX.toUpperCase() + "k2", "v2");
}
};