无论如何,是否可以获得关于何时将消息放置在我的 Azure 队列中的时间戳?什么是最好的方法?
例如,合作伙伴向我的队列发送消息,我想知道合作伙伴将特定消息放入队列的时间。
谢谢
如果您使用的是 .NET API,则在获取消息或查看队列时获得的 CloudQueueMessage 中的属性InsertionTime将包含;
该消息被添加到队列中的时间。
例如,在 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());
} }