예제 #1
0
 protected override async Task ExecuteAsync(CancellationToken cToken)
 {
     while (!cToken.IsCancellationRequested)
     {
         using (NSAppMonDBContext context = new NSAppMonDBContext())
         {
             List <NsapplicationsT> applicationList = context.NsapplicationsT.Include(entity => entity.User).Where(entity => entity.IsActive == true).ToList();
             foreach (NsapplicationsT item in applicationList)
             {
                 bool result = StatusHelper.GetStatus(item.Url);
                 if (result)
                 {
                     continue;
                 }
                 else
                 {
                     MailAddress  fromAddress = new MailAddress("*****@*****.**");
                     MailAddress  toAddress   = new MailAddress(item.User.Mail);
                     const string subject     = "Application Monitoring | Nuevo Software";
                     using (var smtp = new SmtpClient
                     {
                         Host = "smtp.gmail.com",
                         Port = 587,
                         EnableSsl = true,
                         DeliveryMethod = SmtpDeliveryMethod.Network,
                         UseDefaultCredentials = false,
                         Credentials = new NetworkCredential(fromAddress.Address, "ApplicationMonitoring")
                     })
                         using (var message = new MailMessage(fromAddress, toAddress)
                         {
                             Subject = subject,
                             Body = string.Format("{0} is down.\nURL: {1}", item.Name, item.Url)
                         })
                         {
                             smtp.Send(message);
                         }
                     continue;
                 }
             }
             await Task.Delay(TimeSpan.FromSeconds(60), cToken); //ToDo
         }
     }
 }
예제 #2
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="context"></param>
 public ResourceController(NSAppMonDBContext context)
 {
     _context = context;
 }
예제 #3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="context"></param>
 public AppMonController(NSAppMonDBContext context)
 {
     _context = context;
 }