Skip to content

Commit c1b8140

Browse files
fix
1 parent 847a741 commit c1b8140

File tree

1 file changed

+16
-7
lines changed

1 file changed

+16
-7
lines changed

datadog_lambda/dsm.py

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -35,16 +35,25 @@ def carrier_get(key):
3535

3636

3737
def _dsm_set_sns_context(event):
38-
from ddtrace.internal.datastreams.botocore import calculate_sns_payload_size
39-
40-
def sns_payload_calculator(record, context_json):
41-
return calculate_sns_payload_size(record, context_json)
38+
from ddtrace.data_streams import set_consume_checkpoint
4239

43-
def sns_arn_extractor(record):
40+
records = event.get("Records")
41+
if records is None:
42+
return
43+
for record in records:
4444
sns_data = record.get("Sns")
4545
if not sns_data:
46-
return ""
47-
return sns_data.get("TopicArn", "")
46+
return
47+
arn = sns_data.get("TopicArn", "")
48+
context_json = _get_dsm_context_from_lambda(record)
49+
if not context_json:
50+
logger.debug("DataStreams skipped lambda message: %r", record)
51+
return None
52+
53+
def carrier_get(key):
54+
return context_json.get(key)
55+
56+
set_consume_checkpoint("sns", arn, carrier_get)
4857

4958

5059
def _get_dsm_context_from_lambda(message):

0 commit comments

Comments
 (0)