@@ -27,20 +27,21 @@ async def basic_publish_with_instana(
2727 ) as span :
2828 try :
2929 span .set_attribute ("aioamqp.exchange" , argv [0 ])
30- return await wrapped (* argv , ** kwargs )
3130 except Exception as exc :
3231 span .record_exception (exc )
3332 logger .debug (f"aioamqp basic_publish_with_instana error: { exc } " )
33+ finally :
34+ return await wrapped (* argv , ** kwargs )
3435
3536 @wrapt .patch_function_wrapper ("aioamqp.channel" , "Channel.basic_consume" )
36- def basic_consume_with_instana (
37+ async def basic_consume_with_instana (
3738 wrapped : Callable [..., aioamqp .connect ],
3839 instance : object ,
3940 argv : Tuple [object , Tuple [object , ...]],
4041 kwargs : Dict [str , Any ],
4142 ) -> object :
4243 if tracing_is_off ():
43- return wrapped (* argv , ** kwargs )
44+ return await wrapped (* argv , ** kwargs )
4445
4546 callback = argv [0 ]
4647 tracer , parent_span , _ = get_tracer_tuple ()
@@ -62,15 +63,16 @@ async def callback_wrapper(
6263 span .set_attribute ("aioamqp.message" , args [1 ])
6364 span .set_attribute ("aioamqp.exchange_name" , args [2 ].exchange_name )
6465 span .set_attribute ("aioamqp.routing_key" , args [2 ].routing_key )
65- return await wrapped_callback (* args , ** kwargs )
6666 except Exception as exc :
6767 span .record_exception (exc )
6868 logger .debug (f"aioamqp basic_consume_with_instana error: { exc } " )
69+ finally :
70+ return await wrapped_callback (* args , ** kwargs )
6971
7072 wrapped_callback = callback_wrapper (callback )
7173 argv = (wrapped_callback ,) + argv [1 :]
7274
73- return wrapped (* argv , ** kwargs )
75+ return await wrapped (* argv , ** kwargs )
7476
7577 logger .debug ("Instrumenting aioamqp" )
7678
0 commit comments