Im trying to use python azure service bus client to constantly check a queue for new messages that contains process Id. For some reason, everytime i initialize the azure service bus client it runs for a couple of seconds then output the following message: Process finished with exit code -1073741819 (0xC0000005)
. Ive double checked my queue names and everything but I cannot understand what the issue is.
with servicebus_client: receiver = servicebus_client.get_queue_receiver( queue_name=CALC_REQUEST_QUEUE) print( "state 1" ) with receiver: print("state") for msg in receiver: calc_request = json.loads( str( msg ) ) processing_identifier = calc_request.get( 'processingIdentifier', None ) print( "Received: " + str( processing_identifier ) ) calc_config = fetch_calc_configuration( processing_identifier ) calc_response = invoke_capsule_summary_processing(calc_config)
If you just want to pull new messages from some queue continuously,try This :
import asyncio from asyncio.tasks import sleep from azure.servicebus.aio import ServiceBusClient CONNECTION_STR = '' QUEUE_NAME = '' async def main(): servicebus_client = ServiceBusClient.from_connection_string(conn_str=CONNECTION_STR) async with servicebus_client: receiver = servicebus_client.get_queue_receiver(queue_name=QUEUE_NAME) async with receiver: received_msgs = await receiver.receive_messages(max_message_count=10, max_wait_time=5) for msg in received_msgs: print(str(msg)) await receiver.complete_message(msg) loop = asyncio.get_event_loop() while True : #each 10 seconds to pull messages from queue. sleep(10) print('pull messages...') loop.run_until_complete(main())
User contributions licensed under CC BY-SA 3.0