moh-error
The advanced http response friendly Error class (extend from Error) to handle error with more info and features.
Features
- Easy way to create advanced Error with extra info
- Easy to transform to Http response
- Easy to send error to sentry
Installation
# with yarn yarn add moh-error --save # with npm npm install moh-error --save
Usage
To generate a moh-error, use 1 arg or 2 args as below
1 arg: [String || Error ||Object]
2 args: [String, Error]
, [Object, StatusCode(/^[1-5][0-9][0-9]$/)]
the first arg is error instance or error message, the second arg are custom object or status code
const MohError: MyError = // use like normal Errorconst error = 'The error message' // use with normal Errorconst someErr = 'Default Error'const error = someErr // use with custom objectconst ERRORS = UNAUTH: status: 401 code: 11001 message: 'User not authenticated' const error = ERRORSUNAUTH // add extra infoconst loginError = 'Faild to login' user: username: 'ole3021' password: 'youshouldnotpass' isSentry: true // will send this error to sentry // add status codeconst error = 'Unauthorized' 401res
init()
The method to init the lib, include sentry and unExpectedError
handling.(not necessary if not use those features.)
toHttp()
The method to transform the error object to an response
mohErrorInstance.toHttp()
isSentry
Add isSentry
prop in the create error info, will send this error to sentry.