Skip to content

Commit 5b8b929

Browse files
authored
Merge pull request #22 from DataDog/tian.chu/remove-patching-vendored-requests
Remove patching for botocore.vendored.requests
2 parents a253fad + fbac6ec commit 5b8b929

File tree

2 files changed

+7
-32
lines changed

2 files changed

+7
-32
lines changed

datadog_lambda/patch.py

Lines changed: 7 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,21 @@
44
# Copyright 2019 Datadog, Inc.
55

66
import sys
7+
import logging
78

89
from wrapt import wrap_function_wrapper as wrap
910

1011
from datadog_lambda.tracing import get_dd_trace_context
1112

13+
logger = logging.getLogger(__name__)
14+
1215
if sys.version_info >= (3, 0, 0):
1316
httplib_module = 'http.client'
1417
else:
1518
httplib_module = 'httplib'
1619

1720
_httplib_patched = False
1821
_requests_patched = False
19-
_botocore_requests_patched = False
2022

2123

2224
def patch_all():
@@ -26,7 +28,6 @@ def patch_all():
2628
"""
2729
_patch_httplib()
2830
_patch_requests()
29-
_patch_botocore_requests()
3031

3132

3233
def _patch_httplib():
@@ -42,6 +43,7 @@ def _patch_httplib():
4243
'HTTPConnection.request',
4344
_wrap_httplib_request
4445
)
46+
logger.debug('Patched %s', httplib_module)
4547

4648

4749
def _patch_requests():
@@ -58,26 +60,9 @@ def _patch_requests():
5860
'Session.request',
5961
_wrap_requests_request
6062
)
61-
except ImportError:
62-
pass
63-
64-
65-
def _patch_botocore_requests():
66-
"""
67-
Patch the `requests` module that is packaged into `botocore`.
68-
https://stackoverflow.com/questions/40741282/cannot-use-requests-module-on-aws-lambda
69-
"""
70-
global _botocore_requests_patched
71-
if not _botocore_requests_patched:
72-
_botocore_requests_patched = True
73-
try:
74-
wrap(
75-
'botocore.vendored.requests',
76-
'Session.request',
77-
_wrap_requests_request
78-
)
79-
except ImportError:
80-
pass
63+
logger.debug('Patched requests')
64+
except Exception:
65+
logger.debug('Failed to patch requests', exc_info=True)
8166

8267

8368
def _wrap_requests_request(func, instance, args, kwargs):

tests/test_patch.py

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
from datadog_lambda.patch import (
99
_patch_httplib,
1010
_patch_requests,
11-
_patch_botocore_requests,
1211
)
1312
from datadog_lambda.constants import TraceHeader
1413

@@ -42,12 +41,3 @@ def test_patch_requests(self):
4241
self.assertEqual(r.request.headers[TraceHeader.TRACE_ID], '123')
4342
self.assertEqual(r.request.headers[TraceHeader.PARENT_ID], '321')
4443
self.assertEqual(r.request.headers[TraceHeader.SAMPLING_PRIORITY], '2')
45-
46-
def test_patch_botocore_requests(self):
47-
_patch_botocore_requests()
48-
from botocore.vendored import requests
49-
r = requests.get("https://www.datadoghq.com/")
50-
self.mock_get_dd_trace_context.assert_called()
51-
self.assertEqual(r.request.headers[TraceHeader.TRACE_ID], '123')
52-
self.assertEqual(r.request.headers[TraceHeader.PARENT_ID], '321')
53-
self.assertEqual(r.request.headers[TraceHeader.SAMPLING_PRIORITY], '2')

0 commit comments

Comments
 (0)