@mongoosejs/async-hooks
DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/mongoosejs__async-hooks package

0.0.4 • Public • Published

mongoose-async-hooks

Mongoose plugin providing experimental support for Node.js async_hooks

Build Status

Importing

// Using Node.js `require()`
const mongooseAsyncHooks = require('@mongoosejs/async-hooks');

// Using ES6 imports
import mongooseAsyncHooks from '@mongoosejs/async-hooks';

Examples

It integrates with Node.js async hooks

const types = [];
const hooks = {
  init: (asyncId, type) => {
    types.push(type);
  }
};

const asyncHook = require('async_hooks').createHook(hooks);

const schema = new Schema({ name: String });

// Add this plugin
schema.plugin(mongooseAsyncHooks);

const MyModel = mongoose.model('MyModel', schema);

asyncHook.enable();

const doc = new MyModel({ name: 'test' });
doc.save(function(error, doc) {
  asyncHook.disable();

  assert.ok(types.includes('mongoose.MyModel'));
});

Readme

Keywords

Package Sidebar

Install

npm i @mongoosejs/async-hooks

Weekly Downloads

1,528

Version

0.0.4

License

MIT

Unpacked Size

16.7 kB

Total Files

7

Last publish

Collaborators

  • vkarpov15