Do not use .stack property with error objects

This commit is contained in:
Andris Reinman 2017-03-24 13:04:38 +02:00
parent 060b6dbacc
commit d7c06e0a5a
8 changed files with 24 additions and 26 deletions

View file

@ -103,7 +103,7 @@ module.exports.sendMail = (mail, template, callback) => {
module.exports.transport.sendMail(mail, (err, info) => { module.exports.transport.sendMail(mail, (err, info) => {
if (err) { if (err) {
log.error('Mail', err.stack); log.error('Mail', err);
if (err.responseCode && err.responseCode >= 400 && err.responseCode < 500 && tryCount <= 5) { if (err.responseCode && err.responseCode >= 400 && err.responseCode < 500 && tryCount <= 5) {
// temporary error, try again // temporary error, try again
log.verbose('Mail', 'Retrying after %s sec. ...', tryCount); log.verbose('Mail', 'Retrying after %s sec. ...', tryCount);

View file

@ -309,7 +309,7 @@ module.exports.updateLinks = (campaign, list, subscription, serviceUrl, message,
isAttributeValue: true isAttributeValue: true
}), campaign.id, (err, linkId, cid) => { }), campaign.id, (err, linkId, cid) => {
if (err) { if (err) {
log.error('Link', err.stack); log.error('Link', err);
return storeNext(); return storeNext();
} }
map.set(urlItem.value, cid); map.set(urlItem.value, cid);

View file

@ -245,7 +245,7 @@ module.exports.addConfirmation = (list, email, optInIp, data, callback) => {
} }
}, err => { }, err => {
if (err) { if (err) {
log.error('Subscription', err.stack); log.error('Subscription', err);
} }
}); });
}; };

View file

@ -331,7 +331,7 @@ module.exports.sendReset = (username, callback) => {
} }
}, err => { }, err => {
if (err) { if (err) {
log.error('Mail', err.stack); // eslint-disable-line no-console log.error('Mail', err); // eslint-disable-line no-console
} }
}); });

View file

@ -20,7 +20,7 @@ router.get('/:campaign/:list/:subscription', (req, res) => {
}); });
links.countOpen(req.ip, req.headers['user-agent'], req.params.campaign, req.params.list, req.params.subscription, (err, opened) => { links.countOpen(req.ip, req.headers['user-agent'], req.params.campaign, req.params.list, req.params.subscription, (err, opened) => {
if (err) { if (err) {
log.error('Redirect', err.stack || err); log.error('Redirect', err);
} }
if (opened) { if (opened) {
log.verbose('Redirect', 'First open for %s:%s:%s', req.params.campaign, req.params.list, req.params.subscription); log.verbose('Redirect', 'First open for %s:%s:%s', req.params.campaign, req.params.list, req.params.subscription);
@ -54,7 +54,7 @@ router.get('/:campaign/:list/:subscription/:link', (req, res) => {
} }
links.countClick(req.ip, req.headers['user-agent'], req.params.campaign, req.params.list, req.params.subscription, linkId, (err, status) => { links.countClick(req.ip, req.headers['user-agent'], req.params.campaign, req.params.list, req.params.subscription, linkId, (err, status) => {
if (err) { if (err) {
log.error('Redirect', err.stack || err); log.error('Redirect', err);
} }
if (status) { if (status) {
log.verbose('Redirect', 'First click for %s:%s:%s (%s)', req.params.campaign, req.params.list, req.params.subscription, url); log.verbose('Redirect', 'First click for %s:%s:%s (%s)', req.params.campaign, req.params.list, req.params.subscription, url);

View file

@ -11,13 +11,11 @@ let urllib = require('url');
let router = new express.Router(); let router = new express.Router();
let lists = require('../lib/models/lists'); let lists = require('../lib/models/lists');
let fields = require('../lib/models/fields'); let fields = require('../lib/models/fields');
let forms = require('../lib/models/forms');
let subscriptions = require('../lib/models/subscriptions'); let subscriptions = require('../lib/models/subscriptions');
let settings = require('../lib/models/settings'); let settings = require('../lib/models/settings');
let openpgp = require('openpgp'); let openpgp = require('openpgp');
let _ = require('../lib/translate')._; let _ = require('../lib/translate')._;
let util = require('util'); let util = require('util');
let hbs = require('hbs');
router.get('/subscribe/:cid', (req, res, next) => { router.get('/subscribe/:cid', (req, res, next) => {
subscriptions.subscribe(req.params.cid, req.ip, (err, subscription) => { subscriptions.subscribe(req.params.cid, req.ip, (err, subscription) => {
@ -117,11 +115,11 @@ router.get('/subscribe/:cid', (req, res, next) => {
contactAddress: configItems.defaultAddress, contactAddress: configItems.defaultAddress,
defaultPostaddress: configItems.defaultPostaddress, defaultPostaddress: configItems.defaultPostaddress,
preferencesUrl: urllib.resolve(configItems.serviceUrl, '/subscription/' + list.cid + '/manage/' + subscription.cid), preferencesUrl: urllib.resolve(configItems.serviceUrl, '/subscription/' + list.cid + '/manage/' + subscription.cid),
unsubscribeUrl: urllib.resolve(configItems.serviceUrl, '/subscription/' + list.cid + '/unsubscribe/' + subscription.cid), unsubscribeUrl: urllib.resolve(configItems.serviceUrl, '/subscription/' + list.cid + '/unsubscribe/' + subscription.cid)
} }
}, err => { }, err => {
if (err) { if (err) {
log.error('Subscription', err.stack); log.error('Subscription', err);
} }
}); });
}; };
@ -736,11 +734,11 @@ router.post('/:lcid/unsubscribe', passport.parseForm, passport.csrfProtection, (
title: list.name, title: list.name,
contactAddress: configItems.defaultAddress, contactAddress: configItems.defaultAddress,
defaultPostaddress: configItems.defaultPostaddress, defaultPostaddress: configItems.defaultPostaddress,
subscribeUrl: urllib.resolve(configItems.serviceUrl, '/subscription/' + list.cid + '?cid=' + subscription.cid), subscribeUrl: urllib.resolve(configItems.serviceUrl, '/subscription/' + list.cid + '?cid=' + subscription.cid)
} }
}, err => { }, err => {
if (err) { if (err) {
log.error('Subscription', err.stack); log.error('Subscription', err);
} }
}); });
}; };

View file

@ -50,7 +50,7 @@ router.post('/aws', (req, res, next) => {
case 'Bounce': case 'Bounce':
campaigns.updateMessage(message, 'bounced', req.body.Message.bounce.bounceType === 'Permanent', (err, updated) => { campaigns.updateMessage(message, 'bounced', req.body.Message.bounce.bounceType === 'Permanent', (err, updated) => {
if (err) { if (err) {
log.error('AWS', 'Failed updating message: %s', err.stack); log.error('AWS', 'Failed updating message: %s', err);
} else if (updated) { } else if (updated) {
log.verbose('AWS', 'Marked message %s as bounced', req.body.Message.mail.messageId); log.verbose('AWS', 'Marked message %s as bounced', req.body.Message.mail.messageId);
} }
@ -60,7 +60,7 @@ router.post('/aws', (req, res, next) => {
if (req.body.Message.complaint) { if (req.body.Message.complaint) {
campaigns.updateMessage(message, 'complained', true, (err, updated) => { campaigns.updateMessage(message, 'complained', true, (err, updated) => {
if (err) { if (err) {
log.error('AWS', 'Failed updating message: %s', err.stack); log.error('AWS', 'Failed updating message: %s', err);
} else if (updated) { } else if (updated) {
log.verbose('AWS', 'Marked message %s as complaint', req.body.Message.mail.messageId); log.verbose('AWS', 'Marked message %s as complaint', req.body.Message.mail.messageId);
} }
@ -118,7 +118,7 @@ router.post('/sparkpost', (req, res, next) => {
// https://support.sparkpost.com/customer/portal/articles/1929896 // https://support.sparkpost.com/customer/portal/articles/1929896
return campaigns.updateMessage(message, 'bounced', [1, 10, 25, 30, 50].indexOf(Number(evt.bounce_class)) >= 0, (err, updated) => { return campaigns.updateMessage(message, 'bounced', [1, 10, 25, 30, 50].indexOf(Number(evt.bounce_class)) >= 0, (err, updated) => {
if (err) { if (err) {
log.error('Sparkpost', 'Failed updating message: %s', err.stack); log.error('Sparkpost', 'Failed updating message: %s', err);
} else if (updated) { } else if (updated) {
log.verbose('Sparkpost', 'Marked message %s as bounced', evt.campaign_id); log.verbose('Sparkpost', 'Marked message %s as bounced', evt.campaign_id);
} }
@ -127,7 +127,7 @@ router.post('/sparkpost', (req, res, next) => {
case 'spam_complaint': case 'spam_complaint':
return campaigns.updateMessage(message, 'complained', true, (err, updated) => { return campaigns.updateMessage(message, 'complained', true, (err, updated) => {
if (err) { if (err) {
log.error('Sparkpost', 'Failed updating message: %s', err.stack); log.error('Sparkpost', 'Failed updating message: %s', err);
} else if (updated) { } else if (updated) {
log.verbose('Sparkpost', 'Marked message %s as complaint', evt.campaign_id); log.verbose('Sparkpost', 'Marked message %s as complaint', evt.campaign_id);
} }
@ -136,7 +136,7 @@ router.post('/sparkpost', (req, res, next) => {
case 'link_unsubscribe': case 'link_unsubscribe':
return campaigns.updateMessage(message, 'unsubscribed', true, (err, updated) => { return campaigns.updateMessage(message, 'unsubscribed', true, (err, updated) => {
if (err) { if (err) {
log.error('Sparkpost', 'Failed updating message: %s', err.stack); log.error('Sparkpost', 'Failed updating message: %s', err);
} else if (updated) { } else if (updated) {
log.verbose('Sparkpost', 'Marked message %s as unsubscribed', evt.campaign_id); log.verbose('Sparkpost', 'Marked message %s as unsubscribed', evt.campaign_id);
} }
@ -182,7 +182,7 @@ router.post('/sendgrid', (req, res, next) => {
// https://support.sparkpost.com/customer/portal/articles/1929896 // https://support.sparkpost.com/customer/portal/articles/1929896
return campaigns.updateMessage(message, 'bounced', true, (err, updated) => { return campaigns.updateMessage(message, 'bounced', true, (err, updated) => {
if (err) { if (err) {
log.error('Sendgrid', 'Failed updating message: %s', err.stack); log.error('Sendgrid', 'Failed updating message: %s', err);
} else if (updated) { } else if (updated) {
log.verbose('Sendgrid', 'Marked message %s as bounced', evt.campaign_id); log.verbose('Sendgrid', 'Marked message %s as bounced', evt.campaign_id);
} }
@ -191,7 +191,7 @@ router.post('/sendgrid', (req, res, next) => {
case 'spamreport': case 'spamreport':
return campaigns.updateMessage(message, 'complained', true, (err, updated) => { return campaigns.updateMessage(message, 'complained', true, (err, updated) => {
if (err) { if (err) {
log.error('Sendgrid', 'Failed updating message: %s', err.stack); log.error('Sendgrid', 'Failed updating message: %s', err);
} else if (updated) { } else if (updated) {
log.verbose('Sendgrid', 'Marked message %s as complaint', evt.campaign_id); log.verbose('Sendgrid', 'Marked message %s as complaint', evt.campaign_id);
} }
@ -201,7 +201,7 @@ router.post('/sendgrid', (req, res, next) => {
case 'unsubscribe': case 'unsubscribe':
return campaigns.updateMessage(message, 'unsubscribed', true, (err, updated) => { return campaigns.updateMessage(message, 'unsubscribed', true, (err, updated) => {
if (err) { if (err) {
log.error('Sendgrid', 'Failed updating message: %s', err.stack); log.error('Sendgrid', 'Failed updating message: %s', err);
} else if (updated) { } else if (updated) {
log.verbose('Sendgrid', 'Marked message %s as unsubscribed', evt.campaign_id); log.verbose('Sendgrid', 'Marked message %s as unsubscribed', evt.campaign_id);
} }
@ -228,7 +228,7 @@ router.post('/mailgun', uploads.any(), (req, res) => {
case 'bounced': case 'bounced':
return campaigns.updateMessage(message, 'bounced', true, (err, updated) => { return campaigns.updateMessage(message, 'bounced', true, (err, updated) => {
if (err) { if (err) {
log.error('Mailgun', 'Failed updating message: %s', err.stack); log.error('Mailgun', 'Failed updating message: %s', err);
} else if (updated) { } else if (updated) {
log.verbose('Mailgun', 'Marked message %s as bounced', evt.campaign_id); log.verbose('Mailgun', 'Marked message %s as bounced', evt.campaign_id);
} }
@ -236,7 +236,7 @@ router.post('/mailgun', uploads.any(), (req, res) => {
case 'complained': case 'complained':
return campaigns.updateMessage(message, 'complained', true, (err, updated) => { return campaigns.updateMessage(message, 'complained', true, (err, updated) => {
if (err) { if (err) {
log.error('Mailgun', 'Failed updating message: %s', err.stack); log.error('Mailgun', 'Failed updating message: %s', err);
} else if (updated) { } else if (updated) {
log.verbose('Mailgun', 'Marked message %s as complaint', evt.campaign_id); log.verbose('Mailgun', 'Marked message %s as complaint', evt.campaign_id);
} }
@ -244,7 +244,7 @@ router.post('/mailgun', uploads.any(), (req, res) => {
case 'unsubscribed': case 'unsubscribed':
return campaigns.updateMessage(message, 'unsubscribed', true, (err, updated) => { return campaigns.updateMessage(message, 'unsubscribed', true, (err, updated) => {
if (err) { if (err) {
log.error('Mailgun', 'Failed updating message: %s', err.stack); log.error('Mailgun', 'Failed updating message: %s', err);
} else if (updated) { } else if (updated) {
log.verbose('Mailgun', 'Marked message %s as unsubscribed', evt.campaign_id); log.verbose('Mailgun', 'Marked message %s as unsubscribed', evt.campaign_id);
} }
@ -274,7 +274,7 @@ router.post('/zone-mta', (req, res, next) => {
} }
campaigns.updateMessage(message, 'bounced', true, (err, updated) => { campaigns.updateMessage(message, 'bounced', true, (err, updated) => {
if (err) { if (err) {
log.error('ZoneMTA', 'Failed updating message: %s', err.stack); log.error('ZoneMTA', 'Failed updating message: %s', err);
} else if (updated) { } else if (updated) {
log.verbose('ZoneMTA', 'Marked message %s as bounced', req.body.id); log.verbose('ZoneMTA', 'Marked message %s as bounced', req.body.id);
} }

View file

@ -88,7 +88,7 @@ let server = new SMTPServer({
} else { } else {
campaigns.updateMessage(session.message, 'bounced', bounceResult.action === 'failed', (err, updated) => { campaigns.updateMessage(session.message, 'bounced', bounceResult.action === 'failed', (err, updated) => {
if (err) { if (err) {
log.error('VERP', 'Failed updating message: %s', err.stack); log.error('VERP', 'Failed updating message: %s', err);
} else if (updated) { } else if (updated) {
log.verbose('VERP', 'Marked message %s as unsubscribed', session.campaignId); log.verbose('VERP', 'Marked message %s as unsubscribed', session.campaignId);
} }
@ -100,7 +100,7 @@ let server = new SMTPServer({
}); });
server.on('error', err => { server.on('error', err => {
log.error('VERP', err.stack); log.error('VERP', err);
server.close(); server.close();
}); });