mirror of
https://github.com/nodejs/node.git
synced 2025-08-15 21:58:48 +02:00
async_hooks: add executionAsyncResource
Remove the need for the destroy hook in the basic APM case. Co-authored-by: Stephen Belanger <admin@stephenbelanger.com> PR-URL: https://github.com/nodejs/node/pull/30959 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Vladimir de Turckheim <vlad2t@hotmail.com> Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
This commit is contained in:
parent
1c11ea4388
commit
9fdb6e6aaf
19 changed files with 458 additions and 57 deletions
30
test/async-hooks/test-async-exec-resource-http.js
Normal file
30
test/async-hooks/test-async-exec-resource-http.js
Normal file
|
@ -0,0 +1,30 @@
|
|||
'use strict';
|
||||
|
||||
require('../common');
|
||||
const assert = require('assert');
|
||||
const {
|
||||
executionAsyncResource,
|
||||
executionAsyncId,
|
||||
createHook,
|
||||
} = require('async_hooks');
|
||||
const http = require('http');
|
||||
|
||||
const hooked = {};
|
||||
createHook({
|
||||
init(asyncId, type, triggerAsyncId, resource) {
|
||||
hooked[asyncId] = resource;
|
||||
}
|
||||
}).enable();
|
||||
|
||||
const server = http.createServer((req, res) => {
|
||||
res.end('ok');
|
||||
});
|
||||
|
||||
server.listen(0, () => {
|
||||
assert.strictEqual(executionAsyncResource(), hooked[executionAsyncId()]);
|
||||
|
||||
http.get({ port: server.address().port }, () => {
|
||||
assert.strictEqual(executionAsyncResource(), hooked[executionAsyncId()]);
|
||||
server.close();
|
||||
});
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue