2015-11-26 36 views
1

我喜欢更改Q-message在队列中消息到达时触发webjob的场景中不可见的时间段。Azure Queue - 可见性超时 - 触发的Web工作

我在调试时需要在开发阶段。有时由于错误而重新出现旧的Q-msg,但我已经清理了消息所指的blob-storage-item。因此,WebJob崩溃是因为它试图获取不存在的blob对象。

如果我可以设置Q消息在1分钟后再次可见,那将是有帮助的。

公共部分类功能 { 公共静态无效ProcessBulkFileQ( [QueueTrigger(AppConst.Q_BULKFILES)] JOBINFO JOBINFO, [斑点(AppConst.CONTAINER_BULKFILES + “/ {BlobName}”,FileAccess.Read)]流的InputStream , [斑点(AppConst.CONTAINER_BULKFILES + “/ {} BlobName”)CloudBlockBlob BlobToDelete ) {

回答

5

在我们添加的能力SDK的最新的V1.1.0版本为你添加自定义QueueProcessors来控制消息处理的各个方面。你可以看到你想要做的一个例子here in our tests

在该示例中,对于失败的消息,您可以根据错误详细信息明确地将可见性设置为您自己的值。您可以通过创建自己的工厂并将其设置为JobHostConfiguration.Queues.QueueProcessorFactory来注册自定义队列处理器。