public async Task SetStatusAndResetLastTestCycleIntervalAsync( MonitorStatus oldStatus, MonitorStatus newStatus) { // Arrange var monitor = new NcMonitor { StatusId = (int)oldStatus, LastTestCycleInterval = new TimeSpan(2, 3, 4), }; var monitorRepo = new Mock <IMonitorRepository>(); IMonitorManager monitorManager = new MonitorManager( It.IsAny <IChannelRepository>(), monitorRepo.Object, It.IsAny <IRecordRepository>(), It.IsAny <IScenarioRepository>()); // Act await monitorManager.SetStatusAndResetLastTestCycleIntervalAsync( monitor, newStatus); // Assert monitorRepo.Verify(x => x.UpdateAsync(monitor), Times.Once()); Assert.Equal(new TimeSpan?(), monitor.LastTestCycleInterval); Assert.Equal(newStatus, monitor.StatusEnum()); }
public void Step(MonitoredState state) { if (currentNegative == null | currentPositive == null) return; var successors = positiveNFA.Post (currentPositive, (l, t) => state.Evaluate (l.LiteralSet)); if (successors.Count () == 1) { currentPositive = successors.Single (); } else if (successors.Count () == 0) { // There is no way to satisfy the formula currentPositive = null; Status = MonitorStatus.False; return; } else { throw new NotImplementedException ("Non deterministic automaton not supported."); } successors = negativeNFA.Post (currentNegative,(l, t) => state.Evaluate (l.LiteralSet)); if (successors.Count () == 1) { currentNegative = successors.Single (); } else if (successors.Count () == 0) { // There is no way to dissatisfy the formula currentNegative = null; Status = MonitorStatus.True; return; } else { throw new NotImplementedException ("Non deterministic automaton not supported."); } UpdateStatus (); }
public void Capture(IStatistics statistics, MonitorStatus status) { try { switch (status) { case MonitorStatus.None: break; case MonitorStatus.Stopped: _currentStatistics = Get(statistics); break; case MonitorStatus.Running: _previousStatistics = Get(statistics); break; default: break; } } catch (Exception e) { _log.Error($"{_nameOfThis} - Failed to Capture Statistics for {_nameOfThis}: {e.Message}"); _log.Debug($"{_nameOfThis} - Failed to Capture Statistics for {_nameOfThis}: {e.StackTrace}"); if (!ContinueOnError) { throw; } } }
public List <MonitorStatus> dataBarChart() { List <MonitorStatus> lstMonSt = new List <MonitorStatus>(); OraManager oraManager = new OraManager(); DataTable dt = new DataTable(); MonitorStatus monSt; try { string strQuery = string.Empty; strQuery = " select batch_name,c_sla ,est_hours from monitor_edw where c_sla in ('Miss' ,'Meet') order by batch_name "; dt = oraManager.GetDataEDW(strQuery); for (int i = 0; i < dt.Rows.Count; i++) { monSt = new MonitorStatus(); monSt.Batch_name = dt.Rows[i]["batch_name"].ToString(); if (dt.Rows[i]["c_sla"].ToString() == "Miss") { monSt.C_sla = "#E04B4A";// "#dc3545" } else // Meet { monSt.C_sla = "#1caf9a"; // "#28a745"; } monSt.Est_hours = dt.Rows[i]["est_hours"].ToString(); lstMonSt.Add(monSt); } } catch (Exception e) { Console.WriteLine(e.Message.ToString()); } return(lstMonSt); }
public HttpMonitorUp(HttpMonitorId httpMonitorId, MonitorStatus previousStatus, DateTime startTime, DateTime created) { HttpMonitorId = httpMonitorId ?? throw new ArgumentNullException(nameof(httpMonitorId)); PreviousStatus = previousStatus; StartTime = startTime; Created = created; }
public List <MonitorStatus> dataTimeline(string person) { List <MonitorStatus> lstMonSt = new List <MonitorStatus>(); OraManager oraManager = new OraManager(); DataTable dt = new DataTable(); MonitorStatus monSt; try { string strQuery = string.Empty; strQuery = " select batch_name ,status, timeline from monitor_edw "; strQuery += " where business_date is not null "; strQuery += " and first_supportor_id ='" + person + "' "; strQuery += " order by timeline ,status "; dt = oraManager.GetDataEDW(strQuery); for (int i = 0; i < dt.Rows.Count; i++) { monSt = new MonitorStatus(); monSt.Batch_name = dt.Rows[i]["batch_name"].ToString(); monSt.Status_timeline = dt.Rows[i]["status"].ToString().Substring(0, 1); monSt.Timeline = dt.Rows[i]["timeline"].ToString(); lstMonSt.Add(monSt); } } catch (Exception e) { Console.WriteLine(e.Message.ToString()); } return(lstMonSt); }
public void Subscribe() { lock (this._Sync) { if (this.Status != MonitorStatus.Subscribed) { this.UpdateQueue(); NotificationReciever.NotifyChangeSetId += new NotifyChangeSetIdDelegate(OnNotifyChangeSetId); Uri ServiceUri = this.GetServiceUri(); this.StartListener(ServiceUri); bool CurrentlySubscribed = this.Subscribed(); if (!CurrentlySubscribed) { DeliveryPreference SubscriptionInfo = this.GetSubscriptionInfo(ServiceUri.ToString()); this.State.AlertId = this.EventService.SubscribeEvent(this.Server.AuthenticatedUserName, "CheckinEvent", String.Empty, SubscriptionInfo); } this._Status = MonitorStatus.Subscribed; } } }
public void TestMonitorStatus_ReturnsStatusOfMonitor(MonitorStatus monitorStatus) { var monitor = Substitute.For <IMonitor>(); monitor.Status.Returns(monitorStatus); var systemUnderTest = new TrayIcon(monitor); Assert.That(systemUnderTest.MonitorStatus, Is.EqualTo(monitor.Status)); }
protected void OnStatusChange(MonitorStatus status, string message) { var handler = StatusChange; if (handler != null) { handler(this, new MonitorStatusChangeEventArgs(status, message)); } }
public List <MonitorStatus> getReportSASStatus(string status) { List <MonitorStatus> lstMonSt = new List <MonitorStatus>(); OraManager oraManager = new OraManager(); DataTable dt = new DataTable(); MonitorStatus monSt; try { string strQuery = string.Empty; strQuery = " select status ,sla ,c_sla ,work_name ,batch_name ,business_date "; strQuery += " ,job_start_date ,job_end_date "; strQuery += " , frequency , stream , est_hours ,avg_ ,avg_c ,min_ ,max_ ,first_supportor_id"; strQuery += " ,wait_appl ,impact "; strQuery += " from monitor_sas "; if (status != "") { strQuery += " where status like '%" + status + "%' "; } dt = oraManager.GetDataEDW(strQuery); for (int i = 0; i < dt.Rows.Count; i++) { monSt = new MonitorStatus(); monSt.Status = dt.Rows[i]["status"].ToString().Substring(0, 1); monSt.Status_name = dt.Rows[i]["status"].ToString().Substring(2); monSt.Sla = dt.Rows[i]["sla"].ToString(); monSt.C_sla = dt.Rows[i]["c_sla"].ToString(); monSt.Work_name = dt.Rows[i]["work_name"].ToString(); monSt.Batch_name = dt.Rows[i]["batch_name"].ToString(); monSt.Business_date = dt.Rows[i]["business_date"].ToString(); monSt.Job_start_date = dt.Rows[i]["job_start_date"].ToString(); monSt.Job_end_date = dt.Rows[i]["job_end_date"].ToString(); monSt.Frequency = dt.Rows[i]["frequency"].ToString(); monSt.Est_hours = dt.Rows[i]["est_hours"].ToString(); monSt.Avg_c = dt.Rows[i]["avg_c"].ToString(); monSt.Avg = dt.Rows[i]["avg_"].ToString(); monSt.Min = dt.Rows[i]["min_"].ToString(); monSt.Max = dt.Rows[i]["max_"].ToString(); monSt.First_supportor_id = dt.Rows[i]["first_supportor_id"].ToString(); monSt.Wait_appl = dt.Rows[i]["wait_appl"].ToString(); monSt.Impact_appl = dt.Rows[i]["impact"].ToString(); lstMonSt.Add(monSt); } } catch (Exception e) { System.Console.WriteLine(e.Message.ToString()); } return(lstMonSt); }
public override int GetHashCode() { int result = DomainName != null?DomainName.GetHashCode() : 0; result = (result * 397) ^ (Location != null ? Location.GetHashCode() : 0); result = (result * 397) ^ Type.GetHashCode(); result = (result * 397) ^ Status.GetHashCode(); result = (result * 397) ^ MonitorStatus.GetHashCode(); result = (result * 397) ^ Weight.GetHashCode(); return(result); }
public virtual async Task <bool> HasStatusChanged() { PreviousStatus = Status; Status = await GetCurrentStatus(); if (Status == PreviousStatus) { return(false); } LastStatusChange = DateTime.Now; return(true); }
public HttpMonitorDown(HttpMonitorId httpMonitorId, MonitorStatus previousStatus, DateTime startTime, DateTime created) { if (!Enum.IsDefined(typeof(MonitorStatus), previousStatus)) { throw new InvalidEnumArgumentException(nameof(previousStatus), (int)previousStatus, typeof(MonitorStatus)); } HttpMonitorId = httpMonitorId ?? throw new ArgumentNullException(nameof(httpMonitorId)); PreviousStatus = previousStatus; StartTime = startTime; Created = created; }
public async void Update(object stateInfo) { var updateStarted = TryBeginUpdate(out var currentUpdateNumber); if (!updateStarted) { _logger.Info($"{nameof(Monitor)}: postponing update #{currentUpdateNumber + 1} as update {currentUpdateNumber} is still running."); return; } var projects = stateInfo as IEnumerable <MonitoredProjectSettings>; _logger.Info($"{nameof(Monitor)}: beginning update #{currentUpdateNumber}..."); var updateStartTime = DateTime.Now; Status = await DoUpdate(projects); var updateDuration = DateTime.Now.Subtract(updateStartTime); var updateDurationString = $"{updateDuration.Seconds:D2}.{updateDuration.Milliseconds:D3} s"; if (Status == MonitorStatus.CouldNotReachServer) { _logger.Info( $"{nameof(Monitor)}: update #{currentUpdateNumber} failed in {updateDurationString} because the server hosting one or more projects could not be contacted"); } else if (Status == MonitorStatus.AuthorisationError) { _logger.Info( $"{nameof(Monitor)}: update #{currentUpdateNumber} failed in {updateDurationString} due to an authorisation problem with one or more projects"); } else if (Status == MonitorStatus.UnrecognisedError) { _logger.Error( $"{nameof(Monitor)}: update #{currentUpdateNumber} failed in {updateDurationString} due to one or more exceptions (logged above)."); } else if (Status == MonitorStatus.NoProjects) { _logger.Warn( $"{nameof(Monitor)}: update #{currentUpdateNumber} should not have been started as no projects are configured"); } else if (Status == MonitorStatus.UpdateSuccessful) { _logger.Info( $"{nameof(Monitor)}: update #{currentUpdateNumber} completed successfully in {updateDuration.Seconds}.{updateDuration.Milliseconds:D3}" + $" s; pull request count is {ApprovedPullRequestCount + UnapprovedPullRequestCount}."); } CompleteUpdate(); OnUpdateCompleted(); }
public ScheduleDownAlertContact(AlertContactId alertContactId, HttpMonitorId httpMonitorId, MonitorStatus previousStatus, DateTime startTime, DateTime created) { if (!Enum.IsDefined(typeof(MonitorStatus), previousStatus)) { throw new InvalidEnumArgumentException(nameof(previousStatus), (int)previousStatus, typeof(MonitorStatus)); } AlertContactId = alertContactId ?? throw new ArgumentNullException(nameof(alertContactId)); HttpMonitorId = httpMonitorId ?? throw new ArgumentNullException(nameof(httpMonitorId)); PreviousStatus = previousStatus; StartTime = startTime; Created = created; }
public void ReportMonitorsStatus() { MonitorStatus status = MonitorStatus.Ok; _balloonIcon = ToolTipIcon.None; _balloonMessage = string.Empty; foreach (MonitorHost host in _hosts.Values.OrderBy(x => x.Name)) { host.GetMonitorStatus(); } _balloonIcon = ConvertTimerStatusToToolTipIcon(status); ShowBalloonTip("Monitorer MonitorStatus"); }
protected void FireStatusChangeEvent(MonitorStatus status) { if (MonitorStatusChange != null) { var args = new MonitorStatusChangeEventArgs(status); if (MonitorStatusChange.Target is Control targetCtrl) { targetCtrl.Invoke(MonitorStatusChange, this, args); } else { MonitorStatusChange(this, args); } } }
public static IHtmlString Span(this MonitorStatus status, string text, string tooltip = null) { switch (status) { case MonitorStatus.Good: return(StatusIndicator.UpCustomSpam(text, tooltip)); case MonitorStatus.Warning: return(StatusIndicator.WarningCustomSpam(text, tooltip)); case MonitorStatus.Critical: return(StatusIndicator.DownCustomSpam(text, tooltip)); default: return(StatusIndicator.UnknownCustomSpam(text, tooltip)); } }
public static string BackgroundClass(this MonitorStatus status, bool showGood = true) { switch (status) { case MonitorStatus.Good: return(showGood ? "bg-success" : ""); case MonitorStatus.Warning: return("bg-warning"); case MonitorStatus.Critical: return("bg-danger"); default: return("bg-muted"); } }
public static string Class(this MonitorStatus status) { switch (status) { case MonitorStatus.Good: return(StatusIndicator.UpClass); case MonitorStatus.Warning: return(StatusIndicator.WarningClass); case MonitorStatus.Critical: return(StatusIndicator.DownClass); default: return(StatusIndicator.UnknownClass); } }
public static string RowClass(this MonitorStatus status) { switch (status) { case MonitorStatus.Good: return("good-row"); case MonitorStatus.Warning: return("warning-row"); case MonitorStatus.Critical: return("critical-row"); default: return("unknown-row"); } }
public static ToolTipIcon ConvertTimerStatusToToolTipIcon(MonitorStatus status) { switch (status) { case MonitorStatus.Warning: return(ToolTipIcon.Warning); case MonitorStatus.Error: return(ToolTipIcon.Error); case MonitorStatus.Down: return(ToolTipIcon.Error); default: return(ToolTipIcon.None); } }
public List <MonitorStatus> getReportSASFreqency(string frequency) { List <MonitorStatus> lstMonSt = new List <MonitorStatus>(); OraManager oraManager = new OraManager(); DataTable dt = new DataTable(); MonitorStatus monSt; try { string strQuery = string.Empty; strQuery = " select status ,sla ,work_name ,batch_name , business_date "; strQuery += " , job_start_date , job_end_date"; strQuery += " , frequency , stream "; strQuery += " from monitor_sas "; if (frequency != "") { strQuery += " where frequency like '%" + frequency + "%' "; } dt = oraManager.GetDataEDW(strQuery); for (int i = 0; i < dt.Rows.Count; i++) { monSt = new MonitorStatus(); monSt.Status = dt.Rows[i]["status"].ToString().Substring(0, 1); monSt.Status_name = dt.Rows[i]["status"].ToString(); monSt.Sla = dt.Rows[i]["sla"].ToString(); monSt.Work_name = dt.Rows[i]["work_name"].ToString(); monSt.Batch_name = dt.Rows[i]["batch_name"].ToString(); monSt.Business_date = dt.Rows[i]["business_date"].ToString(); monSt.Job_start_date = dt.Rows[i]["job_start_date"].ToString(); monSt.Job_end_date = dt.Rows[i]["job_end_date"].ToString(); monSt.Frequency = dt.Rows[i]["frequency"].ToString(); monSt.Stream = dt.Rows[i]["stream"].ToString(); lstMonSt.Add(monSt); } } catch (Exception e) { System.Console.WriteLine(e.Message.ToString()); } return(lstMonSt); }
public override int GetHashCode() { int result = DomainName != null?DomainName.GetHashCode() : 0; result = (result * 397) ^ (Location != null ? Location.GetHashCode() : 0); result = (result * 397) ^ Type.GetHashCode(); result = (result * 397) ^ Status.GetHashCode(); result = (result * 397) ^ MonitorStatus.GetHashCode(); if (Weight.HasValue) { result = (result * 397) ^ Weight.GetHashCode(); } if (MinChildEndpoints.HasValue) { result = (result * 397) ^ MinChildEndpoints.GetHashCode(); } return(result); }
protected void OnStatusChange(MonitorStatus status) { if (_Status == MonitorStatus.IsOk) { IsOnline = true; } else { IsOnline = false; } IsOnlineFeedback.FireUpdate(); var handler = StatusChange; if (handler != null) { handler(this, new MonitorStatusChangeEventArgs(status)); } }
/// <summary> /// Returns an icon span representation of this MonitorStatus /// </summary> public static IHtmlString IconSpan(this MonitorStatus status) { switch (status) { case MonitorStatus.Good: return(StatusIndicator.IconSpan(StatusIndicator.UpClass)); case MonitorStatus.Warning: case MonitorStatus.Maintenance: return(StatusIndicator.IconSpan(StatusIndicator.WarningClass)); case MonitorStatus.Critical: return(StatusIndicator.IconSpan(StatusIndicator.DownClass)); default: return(StatusIndicator.IconSpan(StatusIndicator.UnknownClass)); } }
public static async Task Send(this ITethrHeartbeat heartbeat, MonitorStatus monitorStatus) { var assembly = Assembly.GetExecutingAssembly(); FileVersionInfo fileVersionInfo = null; if (assembly.Location != null) { fileVersionInfo = FileVersionInfo.GetVersionInfo(assembly.Location); } await heartbeat.Send(new MonitorEvent { Name = Environment.MachineName, Status = monitorStatus, TimeStamp = DateTimeOffset.UtcNow, SoftwareVersion = fileVersionInfo?.ProductVersion }); }
public static string TextClass(this MonitorStatus status, bool showGood = false) { switch (status) { case MonitorStatus.Good: return(showGood ? "text-success" : ""); case MonitorStatus.Warning: return("text-warning"); case MonitorStatus.Critical: return("text-danger"); //case MonitorStatus.Maintenance: default: return("text-muted"); } }
/// <summary> /// Returns an icon span representation of this MonitorStatus. /// </summary> /// <param name="status">The status to get an icon for.</param> public static IHtmlString IconSpan(this MonitorStatus status) { switch (status) { case MonitorStatus.Good: return(StatusIndicator.IconSpanGood); case MonitorStatus.Warning: case MonitorStatus.Maintenance: return(StatusIndicator.IconSpanWarning); case MonitorStatus.Critical: return(StatusIndicator.IconSpanCritical); default: return(StatusIndicator.IconSpanUnknown); } }
}//end ctor() public void Capture(IStatistics statistics, MonitorStatus status) { switch (status) { case MonitorStatus.None: break; case MonitorStatus.Stopped: _currentStatistics = Get(statistics); break; case MonitorStatus.Running: _previousStatistics = Get(statistics); break; default: break; } }
public static string ProgressBarClass(this MonitorStatus status) { switch (status) { case MonitorStatus.Good: return("progress-bar-success"); case MonitorStatus.Unknown: case MonitorStatus.Maintenance: case MonitorStatus.Warning: return("progress-bar-warning"); case MonitorStatus.Critical: return("progress-bar-danger"); default: return(""); } }
public void Consume(MonitoredState state) { foreach (var current in currentPositive.ToList ()) { var successors = positiveNFA.Post (current, (l, t) => state.Evaluate (l.LiteralSet)); currentPositive.Remove (current); foreach (var nt in successors) { currentPositive.Add (nt); } } foreach (var current in currentNegative.ToList ()) { var successors = negativeNFA.Post (current, (l, t) => state.Evaluate (l.LiteralSet)); currentNegative.Remove (current); foreach (var nt in successors) { currentNegative.Add (nt); } } var negativeAcceptance = currentNegative.All (t => !negativeNFA.AcceptingNodes.Contains (t)); var positiveAcceptance = currentPositive.All (t => !positiveNFA.AcceptingNodes.Contains (t)); Status = MonitorStatus.Inconclusive; if (negativeAcceptance | currentPositive.Count == 0) Status = MonitorStatus.False; if (positiveAcceptance | currentNegative.Count == 0) Status = MonitorStatus.True; }
static void monitor_MonitorStatusChanged(object sender, MonitorStatusEventArgs e) { currentStatus = e.Status; }
void UpdateStatus() { var negativeAcceptance = negativeNFA.AcceptingNodes.Contains (currentNegative); var positiveAcceptance = positiveNFA.AcceptingNodes.Contains (currentPositive); if (negativeAcceptance & positiveAcceptance) { Status = MonitorStatus.Inconclusive; } else if (!negativeAcceptance) { Status = MonitorStatus.True; } else if (!positiveAcceptance) { Status = MonitorStatus.False; } else { throw new NotImplementedException (); } }
public void Subscribe() { lock(this._Sync) { if (this.Status != MonitorStatus.Subscribed) { this.UpdateQueue(); NotificationReciever.NotifyChangeSetId += new NotifyChangeSetIdDelegate(OnNotifyChangeSetId); Uri ServiceUri = this.GetServiceUri(); this.StartListener(ServiceUri); bool CurrentlySubscribed = this.Subscribed(); if (!CurrentlySubscribed) { DeliveryPreference SubscriptionInfo = this.GetSubscriptionInfo(ServiceUri.ToString()); this.State.AlertId = this.EventService.SubscribeEvent(this.Server.AuthenticatedUserName, "CheckinEvent", String.Empty, SubscriptionInfo); } this._Status = MonitorStatus.Subscribed; } } }