Skip to content

Commit 81cd291

Browse files
authored
Merge branch 'main' into add-type-hints-to-dbapi
2 parents 47ff8af + d2a51b9 commit 81cd291

File tree

2 files changed

+93
-1
lines changed

2 files changed

+93
-1
lines changed

Diff for: instrumentation/opentelemetry-instrumentation-aws-lambda/src/opentelemetry/instrumentation/aws_lambda/__init__.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@
2929
3030
# Enable instrumentation
3131
BotocoreInstrumentor().instrument()
32-
AwsLambdaInstrumentor().instrument()
3332
3433
# Lambda function
3534
def lambda_handler(event, context):
@@ -39,6 +38,8 @@ def lambda_handler(event, context):
3938
4039
return "200 OK"
4140
41+
AwsLambdaInstrumentor().instrument()
42+
4243
API
4344
---
4445

Diff for: instrumentation/opentelemetry-instrumentation-botocore/tests/test_botocore_instrumentation.py

+91
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,19 @@ def test_traced_client(self):
103103
request_id = "fdcdcab1-ae5c-489e-9c33-4637c5dda355"
104104
self.assert_span("EC2", "DescribeInstances", request_id=request_id)
105105

106+
@mock_aws
107+
def test_no_op_tracer_provider_ec2(self):
108+
BotocoreInstrumentor().uninstrument()
109+
BotocoreInstrumentor().instrument(
110+
tracer_provider=trace_api.NoOpTracerProvider()
111+
)
112+
113+
ec2 = self._make_client("ec2")
114+
ec2.describe_instances()
115+
116+
spans_list = self.memory_exporter.get_finished_spans()
117+
self.assertEqual(len(spans_list), 0)
118+
106119
@mock_aws
107120
def test_not_recording(self):
108121
mock_tracer = Mock()
@@ -148,6 +161,19 @@ def test_s3_client(self):
148161
s3.list_buckets()
149162
self.assert_span("S3", "ListBuckets")
150163

164+
@mock_aws
165+
def test_no_op_tracer_provider_s3(self):
166+
BotocoreInstrumentor().uninstrument()
167+
BotocoreInstrumentor().instrument(
168+
tracer_provider=trace_api.NoOpTracerProvider()
169+
)
170+
171+
s3 = self._make_client("s3")
172+
s3.list_buckets()
173+
174+
spans_list = self.memory_exporter.get_finished_spans()
175+
self.assertEqual(len(spans_list), 0)
176+
151177
@mock_aws
152178
def test_s3_put(self):
153179
s3 = self._make_client("s3")
@@ -176,6 +202,19 @@ def test_sqs_client(self):
176202
"SQS", "ListQueues", request_id=_REQUEST_ID_REGEX_MATCH
177203
)
178204

205+
@mock_aws
206+
def test_no_op_tracer_provider_sqs(self):
207+
BotocoreInstrumentor().uninstrument()
208+
BotocoreInstrumentor().instrument(
209+
tracer_provider=trace_api.NoOpTracerProvider()
210+
)
211+
212+
sqs = self._make_client("sqs")
213+
sqs.list_queues()
214+
215+
spans_list = self.memory_exporter.get_finished_spans()
216+
self.assertEqual(len(spans_list), 0)
217+
179218
@mock_aws
180219
def test_sqs_send_message(self):
181220
sqs = self._make_client("sqs")
@@ -204,6 +243,19 @@ def test_kinesis_client(self):
204243
kinesis.list_streams()
205244
self.assert_span("Kinesis", "ListStreams")
206245

246+
@mock_aws
247+
def test_no_op_tracer_provider_kinesis(self):
248+
BotocoreInstrumentor().uninstrument()
249+
BotocoreInstrumentor().instrument(
250+
tracer_provider=trace_api.NoOpTracerProvider()
251+
)
252+
253+
kinesis = self._make_client("kinesis")
254+
kinesis.list_streams()
255+
256+
spans_list = self.memory_exporter.get_finished_spans()
257+
self.assertEqual(len(spans_list), 0)
258+
207259
@mock_aws
208260
def test_unpatch(self):
209261
kinesis = self._make_client("kinesis")
@@ -213,6 +265,19 @@ def test_unpatch(self):
213265
kinesis.list_streams()
214266
self.assertEqual(0, len(self.memory_exporter.get_finished_spans()))
215267

268+
@mock_aws
269+
def test_no_op_tracer_provider_kms(self):
270+
BotocoreInstrumentor().uninstrument()
271+
BotocoreInstrumentor().instrument(
272+
tracer_provider=trace_api.NoOpTracerProvider()
273+
)
274+
275+
kms = self._make_client("kms")
276+
kms.list_keys(Limit=21)
277+
278+
spans_list = self.memory_exporter.get_finished_spans()
279+
self.assertEqual(len(spans_list), 0)
280+
216281
@mock_aws
217282
def test_uninstrument_does_not_inject_headers(self):
218283
headers = {}
@@ -268,6 +333,19 @@ def test_sts_client(self):
268333
# check for exact attribute set to make sure not to leak any sts secrets
269334
self.assertEqual(expected, dict(span.attributes))
270335

336+
@mock_aws
337+
def test_no_op_tracer_provider_sts(self):
338+
BotocoreInstrumentor().uninstrument()
339+
BotocoreInstrumentor().instrument(
340+
tracer_provider=trace_api.NoOpTracerProvider()
341+
)
342+
343+
sts = self._make_client("sts")
344+
sts.get_caller_identity()
345+
346+
spans_list = self.memory_exporter.get_finished_spans()
347+
self.assertEqual(len(spans_list), 0)
348+
271349
@mock_aws
272350
def test_propagator_injects_into_request(self):
273351
headers = {}
@@ -308,6 +386,19 @@ def check_headers(**kwargs):
308386
finally:
309387
set_global_textmap(previous_propagator)
310388

389+
@mock_aws
390+
def test_no_op_tracer_provider_xray(self):
391+
BotocoreInstrumentor().uninstrument()
392+
BotocoreInstrumentor().instrument(
393+
tracer_provider=trace_api.NoOpTracerProvider()
394+
)
395+
396+
xray_client = self._make_client("xray")
397+
xray_client.put_trace_segments(TraceSegmentDocuments=["str1"])
398+
399+
spans_list = self.memory_exporter.get_finished_spans()
400+
self.assertEqual(len(spans_list), 0)
401+
311402
@mock_aws
312403
def test_override_xray_propagator_injects_into_request(self):
313404
headers = {}

0 commit comments

Comments
 (0)