string-error-parse

1.0.1 • Public • Published

string-error-parse

This module parses the error message (string) of node.js.

This is very useful when you check for errors, for example, in a child process that cannot be verified by a previous instance of Error. Unlike stack-trace module, this module is only focused on interpreting string errors.

Install

npm install string-error-parse

How to use

// Prepare Plain Error Text
var input = `H:\\Private#2019\\CODE\\@submodule\\stably_test\\test.js:16
throw new Error('hello?')
^
 
Error: hello?
at Interface.prompt.on (H:\\Private#2018\\CODE\\@submodule\\stably_test\\test.js:16:11)
at Interface.emit (events.js:182:13)
at Interface._onLine (readline.js:301:10)
at Interface._normalWrite (readline.js:468:12)
at Socket.ondata (readline.js:159:10)
at Socket.emit (events.js:182:13)
at addChunk (_stream_readable.js:287:12)
at readableAddChunk (_stream_readable.js:268:11)
at Socket.Readable.push (_stream_readable.js:223:10)
at Pipe.onStreamRead [as onread] (internal/stream_base_commons.js:122:17)`
 
// Parse the Plain Error Text
var strErrParser = require('string-error-parse')
var parsed = strErrParser(input)
 
// Parsed Error Object Example
var example = { main:
   { text: 'hello?',
     fileName: 'H:\\Private#2019\\CODE\\@submodule\\stably_test\\test.js',
     lineNumber: '16',
     lineText: "throw new Error('hello?')" },
  sub:
   [ { functionName: 'Interface.prompt.on',
       typeName: 'Interface.prompt',
       methodName: 'on',
       columnNumber: '11',
       lineNumber: '16',
       fileName: 'H:\\Private#2019\\CODE\\@submodule\\stably_test\\test.js' },
     { functionName: 'Interface.emit',
       typeName: 'Interface',
       methodName: 'emit',
       columnNumber: '13',
       lineNumber: '182',
       fileName: 'events.js' },
     { functionName: 'Interface._onLine',
       typeName: 'Interface',
       methodName: '_onLine',
       columnNumber: '10',
       lineNumber: '301',
       fileName: 'readline.js' },
     { functionName: 'Interface._normalWrite',
       typeName: 'Interface',
       methodName: '_normalWrite',
       columnNumber: '12',
       lineNumber: '468',
       fileName: 'readline.js' },
     { functionName: 'Socket.ondata',
       typeName: 'Socket',
       methodName: 'ondata',
       columnNumber: '10',
       lineNumber: '159',
       fileName: 'readline.js' },
     { functionName: 'Socket.emit',
       typeName: 'Socket',
       methodName: 'emit',
       columnNumber: '13',
       lineNumber: '182',
       fileName: 'events.js' },
     { functionName: 'addChunk',
       typeName: '',
       methodName: 'addChunk',
       columnNumber: '12',
       lineNumber: '287',
       fileName: '_stream_readable.js' },
     { functionName: 'readableAddChunk',
       typeName: '',
       methodName: 'readableAddChunk',
       columnNumber: '11',
       lineNumber: '268',
       fileName: '_stream_readable.js' },
     { functionName: 'Socket.Readable.push',
       typeName: 'Socket.Readable',
       methodName: 'push',
       columnNumber: '10',
       lineNumber: '223',
       fileName: '_stream_readable.js' },
     { functionName: 'Pipe.onStreamRead [as onread]',
       typeName: 'Pipe',
       methodName: 'onStreamRead [as onread]',
       columnNumber: '17',
       lineNumber: '122',
       fileName: 'internal/stream_base_commons.js' } ] }
 

License

MIT Licensed.

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 1.0.1
    115
    • latest

Version History

  • Version
    Downloads (Last 7 Days)
    • Published
  • 1.0.1
    115
  • 1.0.0
    0

Package Sidebar

Install

npm i string-error-parse

Weekly Downloads

115

Version

1.0.1

License

MIT

Unpacked Size

6.65 kB

Total Files

4

Last publish

Collaborators

  • hmmhmmhm