private ServiceMonitorServiceConfiguration LoadConfiguration() { var repo = new ServiceMonitorConfigRepository(); var config = repo.ReadServiceMonitorConfiguration(); var configuration = Component.Mappers.ConfigurationMapper.Map(config); return(configuration); }
public void UpdateServiceStatus() { var repo = new ServiceMonitorConfigRepository(); repo.Update(new Component.DataAccess.SQLite.Entities.MontioringParameterConfig { Id = 1, ServiceState = (int)ServiceStatus.Running }); }
private void Timer_Elapsed(object sender, ElapsedEventArgs e) { string methodName = MethodBase.GetCurrentMethod().Name; try { //log?.Verbose(className, methodName, "Sending Email"); Console.WriteLine("Timer Tick..."); foreach (var kv in serviceManager.Servies) { var key = kv.Key; ServiceControllerContainer value = kv.Value; if (value.InstallationStatus == ServiceInstallationStatus.Installed) { if (value.ServiceInfo.ServiceStatus != value.ServiceStatus) { Console.WriteLine("Service: {0}, Status: {1}, [{2}]", value.ServiceName, value.ServiceStatus, value.InstallationStatus); value.ServiceInfo.ServiceStatus = value.ServiceStatus; var repo = new ServiceMonitorConfigRepository(); repo.Update(new MontioringParameterConfig { Id = value.ServiceInfo.Id, ServiceState = (int)value.ServiceInfo.ServiceStatus, LastStateChange = DateTime.UtcNow }); GenerateEmail(value); } } } timer.Enabled = false; } catch (Exception ex) { log?.Error(className, methodName, ex.ToString()); Console.WriteLine(ex.ToString()); } finally { timer.Enabled = true; } }