无论如何都要获取有关何时在Azure队列中放置消息的时间戳?什么是最好的方式?
例如,合作伙伴向我的队列发送消息,我想知道合作伙伴在队列中放置特定消息的时间。
由于
答案 0 :(得分:2)
如果您使用的是.NET API,则在获取邮件或查看队列时获取的CloudQueueMessage中的属性InsertionTime将包含;
该消息被添加到队列的时间。
答案 1 :(得分:0)
例如,在Java代码中,以下内容将检索消息(然后获取插入时间),然后查看下一条消息(并获取其插入时间。)这还显示了如何通过使用来控制对队列的访问可撤销的存储访问策略字符串。
public class Dequeue {
public static void main(String[] args) throws InvalidKeyException, URISyntaxException, StorageException
{
String sas = "sv=2012-02-12&sig=XUHWUy2ayrcEjNvZUhcgdPbgKZflwSXxtr0BH87XRII%3D&si=heath";
StorageCredentialsSharedAccessSignature credentials = new StorageCredentialsSharedAccessSignature(sas);
URI baseuri = new URI("http://grassy.queue.core.windows.net");
CloudQueueClient queueClient = new CloudQueueClient(baseuri,credentials);
CloudQueue queue = queueClient.getQueueReference("queue1");
CloudQueueMessage retrievedMessage = queue.retrieveMessage();
System.out.println(retrievedMessage.getMessageContentAsString());
System.out.println(retrievedMessage.getInsertionTime());
queue.deleteMessage(retrievedMessage);
CloudQueueMessage peekedMessage = queue.peekMessage();
System.out.println(peekedMessage.getMessageContentAsString());
System.out.println(peekedMessage.getInsertionTime());
} }