public virtual async Task <TimeSpan> RunJobAsync(Job job, SilenceTime silence) { //estimate report generation time to correct interval between runnings var stopwatch = new Stopwatch(); stopwatch.Start(); Log log = await ExecuteRuleAsync(job); job.WriteSelfTo(log); bool success = log.StatusEnum == StatusEnum.Success; if (!success || job.LogSuccess) { await LogRepository.SaveAsync(log); } if (!success) { await ExecuteTriggersAsync(job, silence, log); } stopwatch.Stop(); return(stopwatch.Elapsed); }
public virtual async Task<TimeSpan> RunJobAsync(Job job, SilenceTime silence) { //estimate report generation time to correct interval between runnings var stopwatch = new Stopwatch(); stopwatch.Start(); Log log = await ExecuteRuleAsync(job); job.WriteSelfTo(log); bool success = log.StatusEnum == StatusEnum.Success; if (!success || job.LogSuccess) await LogRepository.SaveAsync(log); if (!success) await ExecuteTriggersAsync(job, silence, log); stopwatch.Stop(); return stopwatch.Elapsed; }