FAQ
I want to have an application global exception handler.
I have added

app.use(function(err, req, res, next) {
     logger.error(err.message);
     res.status(err.status || 500);
     res.render('error', {
         message: err.message,
         error: {}
     });
});


and in my code, to test this, I throw something like

throw new Error('catch me');


and I never see my middleware catching it.


Thoughts?


Reza

--
Job board: http://jobs.nodejs.org/
New group rules: https://gist.github.com/othiym23/9886289#file-moderation-policy-md
Old group rules: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
---
You received this message because you are subscribed to the Google Groups "nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscribe@googlegroups.com.
To post to this group, send email to nodejs@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/nodejs/b220ac86-267f-4e7e-b165-3b4e1242178d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Search Discussions

  • Ryan Schmidt at Nov 14, 2014 at 2:14 am

    On Nov 13, 2014, at 11:32 AM, Reza Razavipour wrote:

    I want to have an application global exception handler.
    I have added

    app.use(function(err, req, res, next) {
    logger.error(err.message);
    res.status(err.status || 500);
    res.render('error', {
    message: err.message,
    error: {}
    });
    });

    and in my code, to test this, I throw something like
    throw new Error('catch me');

    and I never see my middleware catching it.
    If you're using express version 4 or later, make sure you app.use your error handler *after* you've defined all your normal routes. Other than that, I'm not sure; show us your code.

    --
    Job board: http://jobs.nodejs.org/
    New group rules: https://gist.github.com/othiym23/9886289#file-moderation-policy-md
    Old group rules: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
    ---
    You received this message because you are subscribed to the Google Groups "nodejs" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscribe@googlegroups.com.
    To post to this group, send email to nodejs@googlegroups.com.
    To view this discussion on the web visit https://groups.google.com/d/msgid/nodejs/FB4DB227-CA7D-4F48-9BB5-FDD545FECBCA%40ryandesign.com.
    For more options, visit https://groups.google.com/d/optout.
  • Jimb Esser at Nov 17, 2014 at 9:51 pm
    That will only catch exceptions thrown by synchronous middleware/handlers,
    if you're doing anything asynchronous, Express is not going to catch it.
      Try express-domain-middleware
    <https://www.npmjs.org/package/express-domain-middleware> to use domains to
    catch all exceptions relative to a request and have them passed to your
    Express error handler.
    On Thursday, November 13, 2014 9:32:12 AM UTC-8, Reza Razavipour wrote:

    I want to have an application global exception handler.
    I have added

    app.use(function(err, req, res, next) {
    logger.error(err.message);
    res.status(err.status || 500);
    res.render('error', {
    message: err.message,
    error: {}
    });
    });


    and in my code, to test this, I throw something like

    throw new Error('catch me');


    and I never see my middleware catching it.


    Thoughts?


    Reza
    --
    Job board: http://jobs.nodejs.org/
    New group rules: https://gist.github.com/othiym23/9886289#file-moderation-policy-md
    Old group rules: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
    ---
    You received this message because you are subscribed to the Google Groups "nodejs" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscribe@googlegroups.com.
    To post to this group, send email to nodejs@googlegroups.com.
    To view this discussion on the web visit https://groups.google.com/d/msgid/nodejs/f9dce9e0-544f-419e-938f-8e5c6cbf14d9%40googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupnodejs @
categoriesnodejs
postedNov 13, '14 at 7:10p
activeNov 17, '14 at 9:51p
posts3
users3
websitenodejs.org
irc#node.js

People

Translate

site design / logo © 2022 Grokbase