2017-08-15 154 views
1

我使用SQL Server存储Hangfire数据和自写记录器,以记录我的ASP.NET MVC 5站点的Hangfire中的所有内容。问题是我可以启动Hangfire,配置它,添加新的重复作业没有任何问题,但它只是不起作用(Hangfire.Job表中的失败状态)。Hangfire重复作业失败,未提及

我用这个OwinStartup配置:

public static void ConfigureHangfire(IAppBuilder app, string connectionName) 
{ 
    var options = new SqlServerStorageOptions 
    { 
     QueuePollInterval = TimeSpan.FromSeconds(10) 
    }; 

    GlobalConfiguration.Configuration.UseSqlServerStorage(connectionName, options); 

    // Do not try to rerun failed jobs by default! 
    GlobalJobFilters.Filters.Add(new AutomaticRetryAttribute { Attempts = 0 }); 

    // Add logs into passed log 
    LogProvider.SetCurrentLogProvider(new MyLogProvider())); 

    app.UseHangfireServer(); 
} 

我有2个问题:

  1. 我怎样才能使它发挥作用?
  2. 为什么我没有收到任何日志错误信息?

回答

0

而且我发现了你所有的问题:

首先,我的记录成为了工作,我曾评论这一行后:

GlobalJobFilters.Filters.Add(new AutomaticRetryAttribute { Attempts = 0 }); 

我试图改变的尝试到1,但它仍然没有奏效。只有对此代码的完整评论有帮助。这是一个错误?坦率地说,我认为是。

并且在评论后我有机会收到问题消息。问题是拥有调用方法的类不包含无参数构造函数。