fix: update usage of emailer.send to not catch (as errors are no longer thrown), email error throttler

This commit is contained in:
Julian Lam
2022-01-28 15:16:36 -05:00
parent b3f7b742c1
commit d4e5259fcf
7 changed files with 12 additions and 16 deletions

View File

@@ -343,6 +343,10 @@ Emailer.sendToEmail = async (template, email, language, params) => {
return true;
} catch (err) {
if (Emailer._emailFailThrottle) {
return false;
}
if (err.code === 'ENOENT' && usingFallback) {
Emailer.fallbackNotFound = true;
winston.error(`[emailer/sendToEmail] ${await translator.translate('[[error:sendmail-not-found]]')}`);
@@ -350,6 +354,10 @@ Emailer.sendToEmail = async (template, email, language, params) => {
winston.error(`[emailer/sendToEmail] ${err.message || err.code || 'Unknown error while sending email.'}`);
}
Emailer._emailFailThrottle = setTimeout(() => {
delete Emailer._emailFailThrottle;
}, 1000 * 60 * 5); // 5 minutes
return false;
}
};