public override MonitorWorkItem Start(ITaskExecutionContext context) { MonitorConfiguration monitorConfiguration = this._configuration.Get <MonitorConfiguration>(); monitorConfiguration.Assert(); return((new MonitorWorkItem(monitorConfiguration)).AddIgnoreFilter(new MessageContainsText(monitorConfiguration.IgnoreErrorsWithMessagesContaining)).AddTargetRedirect(new RedirectForMonitorTargets(monitorConfiguration.Targets)).AddMessageGroupingPatterns(monitorConfiguration.MessageGroupingPatterns)); }
public override bool IsDisabled(ITaskExecutionContext context) { MonitorConfiguration configuration = _configuration.Get <MonitorConfiguration>(); context.TypedBag(ConfigurationName, configuration); return(configuration.Disabled); }
public override MonitorWorkItem Start(ITaskExecutionContext context) { MonitorConfiguration configuration = context.TypedBag <MonitorConfiguration>(ConfigurationName); configuration.Assert(); return(new MonitorWorkItem(configuration) .AddIgnoreFilter(new MessageContainsText(configuration.IgnoreErrorsWithMessagesContaining)) .AddTargetRedirect(new RedirectForMonitorTargets(configuration.Targets)) .AddMessageGroupingPatterns(configuration.MessageGroupingPatterns)); }
public MonitorWorkItem(MonitorConfiguration configuration) { if (configuration == null) { throw new ArgumentNullException("configuration"); } DateTimeOffset utcNow = Time.UtcNow; if (configuration.LastRun > utcNow) { utcNow = configuration.LastRun; } this._checkRange = new Range <DateTimeOffset>(configuration.LastRun, utcNow); this._entries = new List <Tuple <Target, MonitorEntry> >(); this._ignore = new List <ISpecification <MonitorEntry> >(); this._redirects = ChainOfResponsibility.Empty <MonitorEntry, Target[]>(); this._messageGrouping = new List <Regex>(); this.Configuration = configuration; }
public MonitorWorkItem(MonitorConfiguration configuration) { if (configuration == null) { throw new ArgumentNullException(nameof(configuration)); } DateTimeOffset upperBound = Time.UtcNow; if (configuration.LastRun > upperBound) { upperBound = configuration.LastRun; } CheckRange = new Range <DateTimeOffset>(configuration.LastRun, upperBound); _entries = new List <Tuple <Target, MonitorEntry> >(); _ignore = new List <ISpecification <MonitorEntry> >(); _redirects = ChainOfResponsibility.Empty <MonitorEntry, Target[]>(); _messageGrouping = new List <Regex>(); Configuration = configuration; }