Check Mongoose Connection Status

Jan 6, 2021

Mongoose connections have a readyState property that contains a number representing the current state of the connection, 0-4. These states are as follows:

These event names will emit when the state changes.

// Demonstrate the readyState and on event emitters
console.log(mongoose.connection.readyState); //logs 0
mongoose.connection.on('connecting', () => { 
  console.log(mongoose.connection.readyState); //logs 2
mongoose.connection.on('connected', () => {
  console.log(mongoose.connection.readyState); //logs 1
mongoose.connection.on('disconnecting', () => {
  console.log(mongoose.connection.readyState); // logs 3
mongoose.connection.on('disconnected', () => {
  console.log(mongoose.connection.readyState); //logs 0
// Connect to a MongoDB server running on 'localhost:27017' and use the
// 'test' database.
await mongoose.connect('mongodb://localhost:27017/test', {
  useNewUrlParser: true // Boilerplate for Mongoose 5.x

Want to become your team's MongoDB expert? "Mastering Mongoose" distills 8 years of hard-earned lessons building Mongoose apps at scale into 153 pages. That means you can learn what you need to know to build production-ready full-stack apps with Node.js and MongoDB in a few days. Get your copy!

More Mongoose Tutorials