Nutritious Pancake Mountain

    @schibsted/middy-error-handler

    3.0.0 • Public • Published

    Schibsted Middy error handler middleware

    github checks current version @ npm weekly downloads @ npm minified size

    HTTP error handler middleware for the middy framework, the stylish Node.js middleware engine for AWS Lambda

    Automatically handles any uncaught errors and creates a proper HTTP response for them (using the message and the status code provided by the error object). We recommend generating these HTTP errors with the npm module http-errors.

    This middleware should be set as the last error handler unless you also want to register the http-reponse-serializer. If so, this middleware should come second-last and the http-response-serializer should come last.

    This is an alternative to standard Middy error handler with the following differences:

    • it always returns JSON object and not text
    • it handles any uncaught error, not just the ones with statusCode and message

    Install

    To install this middleware you can use NPM:

    npm install --save @schibsted/middy-error-handler

    Options

    • logger (defaults to console) - a logging function that is invoked with the current error as an argument. You can pass false if you don't want the logging to happen.
    • level (defaults to error) - log level to use for the error log entry

    Sample usage

    const middy = require('@middy/core');
    const errorHandler = require('@schibsted/middy-error-handler');
    
    const handler = middy(() => {
      throw new createError.NotFound('File not found');
    });
    
    handler
      .use(errorHandler());
    
    // when Lambda runs the handler...
    handler({}, {}, (_, response) => {
      expect(response).toEqual({
        statusCode: 404,
        body: JSON.stringify({ statusCode: 404, message: 'File not found' }),
      })
    })

    Contributing

    Everyone is very welcome to contribute to this repository. Feel free to raise issues or to submit Pull Requests.

    Install

    npm i @schibsted/middy-error-handler

    DownloadsWeekly Downloads

    229

    Version

    3.0.0

    License

    MIT

    Unpacked Size

    11.4 kB

    Total Files

    10

    Last publish

    Collaborators

    • schibstedbot
    • joawan
    • gustavkj
    • pakerstrand