Sha256: d0cfbdf376e0c00fd0d8b8c88865065e2a5208fd4298dffb1350d89281b99ca2

Contents?: true

Size: 1.34 KB

Versions: 79

Compression:

Stored size: 1.34 KB

Contents

/*
 * exception.js: Utility methods for gathing information about uncaughtExceptions.
 *
 * (C) 2010 Charlie Robbins
 * MIT LICENCE
 *
 */

var os = require('os'),
    stackTrace = require('stack-trace');

var exception = exports;

exception.getAllInfo = function (err) {
  return {
    date:    new Date().toString(),
    process: exception.getProcessInfo(),
    os:      exception.getOsInfo(),
    trace:   exception.getTrace(err),
    stack:   err.stack && err.stack.split('\n')
  };
};

exception.getProcessInfo = function () {
  return {
    pid:         process.pid,
    uid:         process.getuid ? process.getuid() : null,
    gid:         process.getgid ? process.getgid() : null,
    cwd:         process.cwd(),
    execPath:    process.execPath,
    version:     process.version,
    argv:        process.argv,
    memoryUsage: process.memoryUsage()
  };
};

exception.getOsInfo = function () {
  return {
    loadavg: os.loadavg(),
    uptime:  os.uptime()
  };
};

exception.getTrace = function (err) {
  var trace = err ? stackTrace.parse(err) : stackTrace.get();
  return trace.map(function (site) {
    return {
      column:   site.getColumnNumber(),
      file:     site.getFileName(),
      function: site.getFunctionName(),
      line:     site.getLineNumber(),
      method:   site.getMethodName(),
      native:   site.isNative(),
    }
  });
};

Version data entries

79 entries across 79 versions & 4 rubygems

Version Path
passenger-5.3.1 src/nodejs_supportlib/vendor-copy/winston/lib/winston/exception.js
passenger-5.3.0 src/nodejs_supportlib/vendor-copy/winston/lib/winston/exception.js
ela-3.3.1 node_modules/winston/lib/winston/exception.js
ela-3.3.0 node_modules/winston/lib/winston/exception.js
ela-3.2.0 node_modules/winston/lib/winston/exception.js
passenger-5.2.3 src/nodejs_supportlib/vendor-copy/winston/lib/winston/exception.js
passenger-5.2.2 src/nodejs_supportlib/vendor-copy/winston/lib/winston/exception.js
ela-3.1.1 node_modules/winston/lib/winston/exception.js
ela-3.1.0 node_modules/winston/lib/winston/exception.js
passenger-5.2.1 src/nodejs_supportlib/vendor-copy/winston/lib/winston/exception.js
ela-3.0.0 node_modules/winston/lib/winston/exception.js
ela-2.0.0 node_modules/winston/lib/winston/exception.js
ela-1.1.0 node_modules/winston/lib/winston/exception.js
passenger-5.2.0 src/nodejs_supportlib/vendor-copy/winston/lib/winston/exception.js
passenger-5.1.12 src/nodejs_supportlib/vendor-copy/winston/lib/winston/exception.js
passenger-5.1.11 src/nodejs_supportlib/vendor-copy/winston/lib/winston/exception.js
passenger-5.1.10 src/nodejs_supportlib/vendor-copy/winston/lib/winston/exception.js
passenger-5.1.9 src/nodejs_supportlib/vendor-copy/winston/lib/winston/exception.js
passenger-5.1.8 src/nodejs_supportlib/vendor-copy/winston/lib/winston/exception.js
passenger-5.1.7 src/nodejs_supportlib/vendor-copy/winston/lib/winston/exception.js