title: Error: Cannot find module 'async_hooks' in NodeJs
body: <p>I am trying to run test code of Async Hooks from official node api documentation and i am getting error <code>Error: Cannot find module 'async_hooks'</code> in console. I already include <code>const async_hooks = require('async_hooks');</code> at the top of my script. Here is my code:</p>
  
  <pre><code>const async_hooks = require('async_hooks');
  
  // Return the ID of the current execution context.
  const eid = async_hooks.executionAsyncId();
  
  // Return the ID of the handle responsible for triggering the callback of the
  // current execution scope to call.
  const tid = async_hooks.triggerAsyncId();
  
  // Create a new AsyncHook instance. All of these callbacks are optional.
  const asyncHook =
      async_hooks.createHook({ init, before, after, destroy, promiseResolve });
  
  // Allow callbacks of this AsyncHook instance to call. This is not an implicit
  // action after running the constructor, and must be explicitly run to begin
  // executing callbacks.
  asyncHook.enable();
  
  // Disable listening for new asynchronous events.
  asyncHook.disable();
  
  //
  // The following are the callbacks that can be passed to createHook().
  //
  
  // init is called during object construction. The resource may not have
  // completed construction when this callback runs, therefore all fields of the
  // resource referenced by "asyncId" may not have been populated.
  function init(asyncId, type, triggerAsyncId, resource) { }
  
  // before is called just before the resource's callback is called. It can be
  // called 0-N times for handles (e.g. TCPWrap), and will be called exactly 1
  // time for requests (e.g. FSReqWrap).
  function before(asyncId) { }
  
  // after is called just after the resource's callback has finished.
  function after(asyncId) { }
  
  // destroy is called when an AsyncWrap instance is destroyed.
  function destroy(asyncId) { }
  
  // promiseResolve is called only for promise resources, when the
  // `resolve` function passed to the `Promise` constructor is invoked
  // (either directly or through other means of resolving a promise).
  function promiseResolve(asyncId) { }
  </code></pre>
  
  <p>I am confused that i need to install with <code>npm install async_hooks</code> but i think it's nodeJs in-build module so we just need to require at the top.</p>