Skip to content
This repository was archived by the owner on Oct 31, 2024. It is now read-only.

Commit 5a46fdf

Browse files
author
Amir Blum
authored
fix: support otel v0.12.0 context propagation (#33)
1 parent 9bf6384 commit 5a46fdf

File tree

3 files changed

+25
-15
lines changed

3 files changed

+25
-15
lines changed

.prettierrc.yml

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
trailingComma: "es5"
2+
semi: true
3+
printWidth: 120
4+
tabWidth: 4
5+
singleQuote: true
6+
arrowParens: "always"
7+
jsxSingleQuote: true

packages/plugin-aws-sdk/package.json

+12-11
Original file line numberDiff line numberDiff line change
@@ -31,20 +31,21 @@
3131
"url": "https://github.com/aspecto-io/opentelemetry-ext-js/issues"
3232
},
3333
"devDependencies": {
34-
"@opentelemetry/node": "^0.9.0",
35-
"@opentelemetry/tracing": "^0.9.0",
36-
"@types/jest": "^25.2.3",
34+
"@opentelemetry/node": "^0.12.0",
35+
"@opentelemetry/tracing": "^0.12.0",
36+
"@types/jest": "^26.0.15",
3737
"@types/shimmer": "^1.0.1",
38-
"aws-sdk": "^2.694.0",
39-
"husky": "^4.2.5",
40-
"jest": "^26.0.1",
41-
"lint-staged": "^10.2.9",
42-
"prettier": "2.0.5",
43-
"ts-jest": "^26.1.0",
44-
"typescript": "^3.9.5"
38+
"aws-sdk": "^2.780.0",
39+
"husky": "^4.3.0",
40+
"jest": "^26.6.1",
41+
"lint-staged": "^10.5.0",
42+
"prettier": "2.1.2",
43+
"ts-jest": "^26.4.3",
44+
"typescript": "^4.0.5"
4545
},
4646
"dependencies": {
47-
"@opentelemetry/core": "^0.9.0",
47+
"@opentelemetry/api": "^0.12.0",
48+
"@opentelemetry/core": "^0.12.0",
4849
"shimmer": "^1.2.1"
4950
},
5051
"jest": {

packages/plugin-aws-sdk/src/services/sqs.ts

+6-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
import { Tracer, SpanKind, Span, propagation, Context, Link, Logger } from '@opentelemetry/api';
1+
import { Tracer, SpanKind, Span, propagation, Context, Link, Logger, getActiveSpan } from '@opentelemetry/api';
22
import { RequestMetadata, ServiceExtension } from './ServiceExtension';
33
import * as AWS from 'aws-sdk';
4-
import { getExtractedSpanContext, TRACE_PARENT_HEADER } from '@opentelemetry/core';
4+
import { TRACE_PARENT_HEADER, TRACE_STATE_HEADER } from '@opentelemetry/core';
55
import {
66
MessageBodyAttributeMap,
77
SendMessageRequest,
@@ -72,6 +72,7 @@ export class SqsServiceExtension implements ServiceExtension {
7272
const params: Record<string, any> = (request as any).params;
7373
const attributesNames = params.MessageAttributeNames || [];
7474
attributesNames.push(TRACE_PARENT_HEADER);
75+
attributesNames.push(TRACE_STATE_HEADER);
7576
params.MessageAttributeNames = attributesNames;
7677
}
7778
break;
@@ -168,9 +169,10 @@ export class SqsServiceExtension implements ServiceExtension {
168169
propagtedContext: Context
169170
): Span {
170171
const links: Link[] = [];
171-
if (propagtedContext) {
172+
const spanContext = getActiveSpan(propagtedContext)?.context();
173+
if (spanContext) {
172174
links.push({
173-
context: getExtractedSpanContext(propagtedContext),
175+
context: spanContext,
174176
} as Link);
175177
}
176178

0 commit comments

Comments
 (0)