public static void TraceCall(this IAwsLogger logger, string name, Action action, bool critical = false) { logger.LogTrace(0, $"Calling {name}..."); try { action(); logger.LogTrace(0, $"Returned from {name}."); } catch (OperationCanceledException) { logger.LogInfo(0, $"Cancelled {name}."); } catch (Exception ex) { logger.LogDebug(0, $"Exception while calling {name}. Error: {ex.Message}", ex); if (critical) { logger.LogCritical(0, $"Error while calling {name}. Error: {ex.Message}"); } else { logger.LogError(0, $"Error while calling {name}. Error: {ex.Message}"); } } }
public AwsDeliveryProcessor( string originalMailIdHeaderName, string awsAccessKeyId, string awsSecretAccessKey, string awsRegionName, string awsSqsUrl, string bounceQueueName, string complaintQueueName, string deliveryQueueName, IAwsLogger logger, IAwsMailListManager mailListManager) { OriginalMailIdHeaderName = originalMailIdHeaderName; MailListManager = mailListManager; AwsAccessKeyId = awsAccessKeyId; AwsSecretAccessKey = awsSecretAccessKey; AwsRegionName = awsRegionName; AwsSqsUrl = awsSqsUrl; BounceQueueName = bounceQueueName; ComplaintQueueName = complaintQueueName; DeliveryQueueName = deliveryQueueName; Logger = logger; Logger.LogTrace(0, "AwsDeliveryProcessor created."); }
public MailListManager(IAwsLogger logger) { Logger = logger; }