@@ -255,7 +255,7 @@ def test_sqs_send_batch(instrument, elasticapm_client, sqs_client_and_queue):
255
255
assert span ["name" ] == "SQS SEND_BATCH to myqueue"
256
256
assert span ["type" ] == "messaging"
257
257
assert span ["subtype" ] == "sqs"
258
- assert span ["action" ] == "send "
258
+ assert span ["action" ] == "send_batch "
259
259
assert span ["context" ]["destination" ]["cloud" ]["region" ] == "us-east-1"
260
260
assert span ["context" ]["destination" ]["service" ]["name" ] == "sqs"
261
261
assert span ["context" ]["destination" ]["service" ]["resource" ] == "sqs/myqueue"
@@ -324,7 +324,7 @@ def test_sqs_send_disttracing_dropped_span(instrument, elasticapm_client, sqs_cl
324
324
assert transaction .id in traceparent # due to DroppedSpan, transaction.id is used instead of span.id
325
325
326
326
327
- def test_sqs_receive (instrument , elasticapm_client , sqs_client_and_queue ):
327
+ def test_sqs_receive_and_delete (instrument , elasticapm_client , sqs_client_and_queue ):
328
328
sqs , queue_url = sqs_client_and_queue
329
329
sqs .send_message (
330
330
QueueUrl = queue_url ,
@@ -341,13 +341,59 @@ def test_sqs_receive(instrument, elasticapm_client, sqs_client_and_queue):
341
341
"All" ,
342
342
],
343
343
)
344
+ sqs .delete_message (QueueUrl = queue_url , ReceiptHandle = response ["Messages" ][0 ]["ReceiptHandle" ])
344
345
elasticapm_client .end_transaction ("test" , "test" )
345
- span = elasticapm_client .events [constants .SPAN ][0 ]
346
- assert span ["name" ] == "SQS RECEIVE from myqueue"
347
- assert span ["type" ] == "messaging"
348
- assert span ["subtype" ] == "sqs"
349
- assert span ["action" ] == "receive"
350
- assert span ["context" ]["destination" ]["cloud" ]["region" ] == "us-east-1"
351
- assert span ["context" ]["destination" ]["service" ]["name" ] == "sqs"
352
- assert span ["context" ]["destination" ]["service" ]["resource" ] == "sqs/myqueue"
353
- assert span ["context" ]["destination" ]["service" ]["type" ] == "messaging"
346
+
347
+ receive_span = elasticapm_client .events [constants .SPAN ][0 ]
348
+ assert receive_span ["name" ] == "SQS RECEIVE from myqueue"
349
+ assert receive_span ["type" ] == "messaging"
350
+ assert receive_span ["subtype" ] == "sqs"
351
+ assert receive_span ["action" ] == "receive"
352
+ assert receive_span ["context" ]["destination" ]["cloud" ]["region" ] == "us-east-1"
353
+ assert receive_span ["context" ]["destination" ]["service" ]["name" ] == "sqs"
354
+ assert receive_span ["context" ]["destination" ]["service" ]["resource" ] == "sqs/myqueue"
355
+ assert receive_span ["context" ]["destination" ]["service" ]["type" ] == "messaging"
356
+
357
+ delete_span = elasticapm_client .events [constants .SPAN ][1 ]
358
+ assert delete_span ["name" ] == "SQS DELETE from myqueue"
359
+ assert delete_span ["type" ] == "messaging"
360
+ assert delete_span ["subtype" ] == "sqs"
361
+ assert delete_span ["action" ] == "delete"
362
+ assert delete_span ["context" ]["destination" ]["cloud" ]["region" ] == "us-east-1"
363
+ assert delete_span ["context" ]["destination" ]["service" ]["name" ] == "sqs"
364
+ assert delete_span ["context" ]["destination" ]["service" ]["resource" ] == "sqs/myqueue"
365
+ assert delete_span ["context" ]["destination" ]["service" ]["type" ] == "messaging"
366
+
367
+
368
+ def test_sqs_delete_batch (instrument , elasticapm_client , sqs_client_and_queue ):
369
+ sqs , queue_url = sqs_client_and_queue
370
+ sqs .send_message (
371
+ QueueUrl = queue_url ,
372
+ MessageAttributes = {
373
+ "Title" : {"DataType" : "String" , "StringValue" : "foo" },
374
+ },
375
+ MessageBody = ("bar" ),
376
+ )
377
+ response = sqs .receive_message (
378
+ QueueUrl = queue_url ,
379
+ AttributeNames = ["All" ],
380
+ MessageAttributeNames = [
381
+ "All" ,
382
+ ],
383
+ )
384
+ elasticapm_client .begin_transaction ("test" )
385
+ sqs .delete_message_batch (
386
+ QueueUrl = queue_url ,
387
+ Entries = [{"Id" : "foo" , "ReceiptHandle" : response ["Messages" ][0 ]["ReceiptHandle" ]}],
388
+ )
389
+ elasticapm_client .end_transaction ("test" , "test" )
390
+
391
+ delete_span = elasticapm_client .events [constants .SPAN ][0 ]
392
+ assert delete_span ["name" ] == "SQS DELETE_BATCH from myqueue"
393
+ assert delete_span ["type" ] == "messaging"
394
+ assert delete_span ["subtype" ] == "sqs"
395
+ assert delete_span ["action" ] == "delete_batch"
396
+ assert delete_span ["context" ]["destination" ]["cloud" ]["region" ] == "us-east-1"
397
+ assert delete_span ["context" ]["destination" ]["service" ]["name" ] == "sqs"
398
+ assert delete_span ["context" ]["destination" ]["service" ]["resource" ] == "sqs/myqueue"
399
+ assert delete_span ["context" ]["destination" ]["service" ]["type" ] == "messaging"
0 commit comments