0

我有使用 .NET Core 3.1\C# 的 Azure Function 我正在尝试使用重试策略。 请参阅下面的函数代码:

using System;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Host;
using Microsoft.Extensions.Logging;

namespace DevFunctionApp
{
public class Function1
{
    private static int _counter = 0;

    public Function1() { }

    [FunctionName("Function1")]
    [FixedDelayRetry(5, "00:01:00")] // delayInterval = 1 minute
    public void Run([TimerTrigger("0 */10 * * * *")] TimerInfo myTimer, ILogger log) // it runs every 10 minutes
    {
        log.LogInformation($"C# Timer trigger function executed at: {DateTime.Now}");

        throw new System.Exception("Azure Function Rety Exception");
    }
}
}

当函数失败时,重试逻辑在第一次、第二次和第三次重试时正常工作,但对于最后两个第四次和第五次,它会同时触发它们。请参阅下面的日志:

在此处输入图像描述

不管设置了多少次重试或时间间隔,它总是同时触发最后两次重试。

问题:如何解决最后两次重试同时触发的问题?

4

0 回答 0