我喜欢在队列中消息到达时触发webjob的情况下更改Q-message不可见的时间跨度。
我在调试时需要在开发阶段。有时由于错误而重新出现旧的Q-msg,但我已经清理了消息所引用的blob-storage-item。因此,WebJob崩溃是因为它试图获得不存在的blob-object。
如果我可以设置Q消息在1分钟后再次可见,那将是有帮助的。
公共部分类函数 { public static void ProcessBulkFileQ( [QueueTrigger(AppConst.Q_BULKFILES)] JobInfo JobInfo, [Blob(AppConst.CONTAINER_BULKFILES +" / {BlobName}",FileAccess.Read)] Stream InputStream, [Blob(AppConst.CONTAINER_BULKFILES +" / {BlobName}")] CloudBlockBlob BlobToDelete ) {
答案 0 :(得分:5)
在SDK的最新v1.1.0版本中,我们添加了添加自定义 QueueProcessor 以控制邮件处理各个方面的功能。您可以查看您要查看的内容here in our tests的示例。
在该示例中,对于失败的消息,您可以根据错误详细信息将可见性显式设置为您自己的值。您可以通过创建自己的工厂并在 JobHostConfiguration.Queues.QueueProcessorFactory 上进行设置来注册自定义QueueProcessors。