25개 이상의 토픽을 선택하실 수 없습니다.
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
- 'use strict';
- var util = require('util');
- var onExit = require('signal-exit');
- var currentlyUnhandled = require('currently-unhandled');
-
- var installed = false;
-
- module.exports = function (log) {
- if (installed) {
- return;
- }
-
- installed = true;
-
- log = log || console.error;
-
- var listUnhandled = currentlyUnhandled();
-
- onExit(function () {
- var unhandledRejections = listUnhandled();
-
- if (unhandledRejections.length > 0) {
- unhandledRejections.forEach(function (x) {
- var err = x.reason;
-
- if (!(err instanceof Error)) {
- err = new Error('Promise rejected with value: ' + util.inspect(err));
- }
-
- log(err.stack);
- });
-
- process.exitCode = 1;
- }
- });
- };
|