Merge pull request 'avoid flooding logs if the email sending failed' (#6) from avoid_flooding_logs_if_failed_sending_email into master

Reviewed-on: #6
This commit is contained in:
Laurențiu Constantin 2024-06-12 15:19:27 +00:00
commit 13f25867b8
2 changed files with 39 additions and 5 deletions

View File

@ -22,6 +22,7 @@ namespace AppServer
private volatile DBsubsOperationManager dbsubsoperManage; private volatile DBsubsOperationManager dbsubsoperManage;
private volatile DBvehiclesManager dbvehs; private volatile DBvehiclesManager dbvehs;
private DBvehiclesManager DBvehInfo; private DBvehiclesManager DBvehInfo;
List<string> blackListAddress = new List<string>();
public static volatile Int32 LocationCheckQueuesCount = 0; public static volatile Int32 LocationCheckQueuesCount = 0;
Int64 count = 0; Int64 count = 0;
@ -410,6 +411,12 @@ namespace AppServer
if (Program.cfg.enableEmailService && !String.IsNullOrEmpty(Program.cfg.emailAddress) && !String.IsNullOrEmpty(mailAdr)) if (Program.cfg.enableEmailService && !String.IsNullOrEmpty(Program.cfg.emailAddress) && !String.IsNullOrEmpty(mailAdr))
{ {
if (blackListAddress.Contains(mailAdr))
{
Utils.WriteLine($" sendMailGeo : The email was not sent. Email address '{mailAdr}' is in blacklist ");
return;
}
try try
{ {
MailAddress from = new MailAddress(Program.cfg.emailAddress); MailAddress from = new MailAddress(Program.cfg.emailAddress);
@ -433,7 +440,10 @@ namespace AppServer
} }
catch (Exception ex) catch (Exception ex)
{ {
Console.WriteLine("Exception in sendMailGeo: ", ex.ToString()); if (ex.ToString().Contains("timed out"))
blackListAddress.Add(mailAdr);
Utils.WriteLine($"Exception in sendMailGeo: {ex.ToString()}");
} }
} }
else else
@ -447,6 +457,13 @@ namespace AppServer
{ {
if (Program.cfg.enableEmailService && !String.IsNullOrEmpty(Program.cfg.emailAddress) && !String.IsNullOrEmpty(mailAdr)) if (Program.cfg.enableEmailService && !String.IsNullOrEmpty(Program.cfg.emailAddress) && !String.IsNullOrEmpty(mailAdr))
{ {
if (blackListAddress.Contains(mailAdr))
{
Utils.WriteLine($" sendAlarmMail : The email was not sent. Email address '{mailAdr}' is in blacklist ");
return;
}
try try
{ {
MailAddress from = new MailAddress(Program.cfg.emailAddress); MailAddress from = new MailAddress(Program.cfg.emailAddress);
@ -458,14 +475,17 @@ namespace AppServer
} }
catch (Exception ex) catch (Exception ex)
{ {
if (ex.ToString().Contains("timed out"))
blackListAddress.Add(mailAdr);
Utils.WriteLine("Exception in sendMailAlarm2: {0}" + ex.ToString(), ConsoleColor.Red); Utils.WriteLine("Exception in sendMailAlarm2: {0}" + ex.ToString(), ConsoleColor.Red);
} }
} }
else else
{ {
Utils.WriteLine("Email Server not Set",ConsoleColor.Cyan); Utils.WriteLine("Email Server not Set", ConsoleColor.Cyan);
} }
} }
private String processZoneAlarm(string radioID, htCell_t cell, bool zone, bool landMArk, string mailAdr, bool sendOnMsgBus) private String processZoneAlarm(string radioID, htCell_t cell, bool zone, bool landMArk, string mailAdr, bool sendOnMsgBus)
{ {

View File

@ -28,6 +28,8 @@ namespace AppServer
private DBvehiclesManager dbvehs; private DBvehiclesManager dbvehs;
internal DBsubsOperationManager dbsubsoperManage; internal DBsubsOperationManager dbsubsoperManage;
private DBcallPatchManager dbCallPatch; private DBcallPatchManager dbCallPatch;
private List<string> blackListAddress = new List<string>();
#region code for zone #region code for zone
private volatile static ArrayList ZoneList = new ArrayList(); private volatile static ArrayList ZoneList = new ArrayList();
private volatile static ArrayList LandList = new ArrayList(); private volatile static ArrayList LandList = new ArrayList();
@ -2150,6 +2152,13 @@ namespace AppServer
private void sendAlarmMail(string mes, string mailAdr) private void sendAlarmMail(string mes, string mailAdr)
{ {
if (blackListAddress.Contains(mailAdr))
{
Utils.WriteLine($" sendAlarmMail : The email was not sent. Email address '{mailAdr}' is in blacklist ");
return;
}
try try
{ {
MailAddress from = new MailAddress(Program.cfg.emailAddress); MailAddress from = new MailAddress(Program.cfg.emailAddress);
@ -2161,12 +2170,17 @@ namespace AppServer
} }
catch (Exception ex) catch (Exception ex)
{ {
if (ex.ToString().Contains("timed out"))
blackListAddress.Add(mailAdr);
Utils.WriteLine("Exception in sendMailAlarm: " + ex.ToString(), ConsoleColor.Red); Utils.WriteLine("Exception in sendMailAlarm: " + ex.ToString(), ConsoleColor.Red);
//Console.WriteLine(e.ToString()); //Console.WriteLine(e.ToString());
} }
} }
public void sendDailyReportMail(String PdfFile, string mailAdr)
public void sendDailyReportMail(String PdfFile, string mailAdr)
{ {
try try
{ {