Upgrade error reporting to include headers and hash the subject

This commit is contained in:
Remy Sharp 2012-07-27 14:00:19 +01:00
parent d6261a06db
commit 2faf997cfa
3 changed files with 22 additions and 7 deletions

View File

@ -93,13 +93,19 @@ module.exports = Observable.extend({
delete session.user.email;
}
var headers = utils.extend({}, req.headers);
delete headers.cookie;
context = {
name: err.name,
message: err.message,
stack: err.stack,
body: JSON.stringify(req.body, null, 2),
session: JSON.stringify(session, null, 2) || null,
url: this.helpers.url(req.url, true)
url: this.helpers.url(req.url, true),
path: req.url,
headers: JSON.stringify(headers) || null,
method: req.method
};
if (context.body === '{}') {

View File

@ -1,5 +1,6 @@
var Observable = require('../utils').Observable,
errors = require('../errors');
errors = require('../errors'),
crypto = require('crypto');
module.exports = Observable.extend({
constructor: function MailHandler(transport, render) {
@ -18,9 +19,9 @@ module.exports = Observable.extend({
}
_this.sendMail({
from: "JSBin <dave-the-robot@jsbin.com>",
from: "Dave <dave-the-robot@jsbin.com>",
to: to,
subject: 'JSBin Password Reset',
subject: 'JS Bin Password Reset',
text: body
}, fn);
});
@ -33,10 +34,12 @@ module.exports = Observable.extend({
return fn(err);
}
var hash = crypto.createHash('md5').update(body).digest('hex').slice(0, 6);
_this.sendMail({
from: "JSBin <dave-the-robot@jsbin.com>",
from: "Dave <dave-the-robot@jsbin.com>",
to: to,
subject: 'JSBin Internal Server Error',
subject: 'JS Bin Crash Report: ' + context.message + ' ' + hash,
text: body
}, fn);
});

View File

@ -4,17 +4,23 @@ So JSBin blew up accessing: {{url}}
{{stack}}
{{method}} {{path}}
{{headers}}
{{#body}}
POST Body:
{{{body}}}
{{/body}}
{{#session}}
Session:
{{{session}}}
{{/session}}
Cheers,
Dave
Dave