Rajesh Rajamani
Rajesh Rajamani

Reputation: 549

Azure Queue Send Message Method Expiry

New to Azure and testing Azure Queues . I attempted sending a message to the Queue with the Python SDK . Here is the method that I'm calling

from azure.storage.queue import QueueServiceClient, QueueClient, QueueMessage

connectionstring=os.environ.get("connection_string")
queue_client = QueueClient.from_connection_string(connectionstring,queue_name)


msg_content={"MessageID":"AQ2","MessageContext":"This is a test Message"}

#set the visibility timeout to 10 seconds and time-to-live to 1 day (3600 minutes)
#The documentation seems to say its an integer . Is it day , minutes ,hours ,seconds ?

queue_client.send_message(msg_content,visibility_timeout=10,time_to_live=3600)

and the output I get as a response from the queue is

{'id': '90208a43-15d9-461e-a0ba-b12e02624d34',
 'inserted_on': datetime.datetime(2020, 6, 9, 12, 17, 57, tzinfo=<FixedOffset 0.0>),
 'expires_on': datetime.datetime(2020, 6, 9, 13, 17, 57, tzinfo=<FixedOffset 0.0>),
 'dequeue_count': None,
 'content': {'MessageID': 'AQ2',
 'MessageContext': 'This is a test Message'},
 'pop_receipt': '<hidingthistoavoidanydisclosures>',
 'next_visible_on': datetime.datetime(2020, 6, 9, 12, 18, 7, tzinfo=<FixedOffset 0.0>)}

Now if you observe the expires_on its clearly an hour from the insert date which is fine . But for some reason the message instantly moved to the poison queue ( which should normally happen after an hour if the message is untouched . I don't get where I'm going wrong . Request help on how to set the expiry time right and why its instantly moving the message to poison queue

Upvotes: 0

Views: 524

Answers (1)

buffalo
buffalo

Reputation: 36

The time to live is in seconds. Here's the doc for queue send message

Upvotes: 1

Related Questions