scriptDomain.on('error', function (e) { if (!e.stack) { log.error.apply(log, [name + ' unkown exception']); return; } let lines = e.stack.split('\n'); let stack = []; for (let i = 0; i < lines.length; i++) { if (lines[i].match(/\[as runInContext\]/)) break; stack.push(lines[i]); } log.error.apply(log, [name + ' ' + stack.join('\n')]); });
app.use(function(req, res, next) { var reqDomain = domain.create(); reqDomain.on('error', function(err) { res.render('error'); }); reqDomain.run(next); });
domain2.on('error', function(err){ console.log("domain2 处理这个错误 ("+err.message+")"); });
magicComplete(line, code, pos, done) { const parts = line.trim().split(/\s+/g) if (!this.magics.block[parts[0]]) { return false } const magic = this.magics.block[parts[0]] const args = parts.slice(1) if (!magic.complete) return false var d = require('domain').create() d.on('error', err => { console.log('async error', err) console.log('async error', err.stack) done(err) }) d.run(() => { magic.complete(this, code, pos, done) }) return true }
rawEvaluate(code, out, done) { let result var d = require('domain').create() d.on('error', err => { console.log('async error', err) out.error('Async Error', err.message, err.stack) }) d.run(() => { try { result = this.rawRun(code) } catch (error) { return done(error) } // TODO allow custom formatters return done(null, result !== undefined ? format(result) : null) }) }
d1.on('error', function (err) { assert.equal(err.toString(), 'Error: inside domain 1'); done(); });
d.on('error', function(e){ (new Ouch) .pushHandler((new Ouch.handlers.JsonResponseHandler(
export default function loadExt(ctx, out, args, done) { const name = args.shift() if (!config.extensions) { throw new Error(`No extensions configured (trying to load ${name}`) } if (!name) { throw new Error("No extension specified to load") } if (!config.extensions[name]) { throw new Error(`Extension ${name} not available`) } var d = require('domain').create() d.on('error', err => { console.log('async error', err) done(err) }) d.run(() => { config.extensions[name](ctx, args, (err, magics) => { if (err || !magics) return done(err) for (let name in magics.block) { ctx.magics.block[name] = magics.block[name] } for (let name in magics.line) { ctx.magics.line[name] = magics.line[name] } done() }) }) }
scriptDomain.on('error', e => { /* istanbul ignore if */ if (!e.stack) { log.error([name + ' unkown exception']); return; } const lines = e.stack.split('\n'); const stack = []; for (let i = 0; i < lines.length; i++) { if (lines[i].match(/at ContextifyScript.Script.runInContext/)) { break; } stack.push(lines[i]); } log.error([name + ' ' + stack.join('\n')]); });
d.on('error', error => { console.error('DOMAIN error ', error.stack ? error.stack : error);
d.on('error', function (e) { (new Ouch)
d0.on('error', function (err) { assert.equal(err.toString(), 'Error: inside domain 0'); done(); });
domain1.on('error', function(err){ console.log("domain1 处理这个错误 ("+err.message+")"); });