Polly重试策略未重试

时间:2018-10-23 19:34:13

标签: c# .net command-line-interface polly

这是我们的政策。

Policy GetNewPolicy()
    {
        return Policy.Handle<TimeoutException>()
            .Or<WebSocketException>()
            .Or<SshConnectionException>()
            .Or<SocketException>()
            .Retry(RetryCount, onRetry: (e, i) => Console.WriteLine($"Retry{i} due to {e.GetType().Name} "));
    }  

这是一个我们的客户如何与之交互的示例:

 var policy = GetNewPolicy();
     return policy.Execute(() =>
                {
                   //do stuff that might throw SocketException
                }); 

但是,当我们检查日志时,该策略似乎并没有重试,我们在日志中看到确实抛出了SocketException,但是没有重试。此代码通过SQL代理作业在命令行界面中执行。

这是生成的日志的屏幕截图。

enter image description here

0 个答案:

没有答案