1

キューからアイテムを処理する必要があります。

キューから項目を削除するには、 を手動で呼び出しますQueue.DeleteMessage。これは、処理が成功するかどうかに関係なく発生する必要があります。

var queueMessage = Queue.GetMessage();

try
{
    pipeline.Process(queueMessage);
}
catch (Exception ex)
{
    try
    {
        Logger.LogException(ex);
    }
    catch { }
}
finally
{
    Queue.DeleteMessage(queueMessage);
}

問題:

失敗すると、エラーをデータストアに記録します。このロギングが失敗した場合 (おそらくデータ ストアが利用できない場合)、メッセージをキューから削除する必要があります。

LogException呼び出しを別の でラップしましたtry catch。これは正しい方法ですか、それとも実行することですか?

4

2 に答える 2