gpt4 book ai didi

node.js - 如何在 node.js 和 mongoDB native 驱动程序上启用调试?

转载 作者:可可西里 更新时间:2023-11-01 10:44:34 25 4
gpt4 key购买 nike

我使用带有连接池的 node.js 和 node-mongodb-native 驱动程序。有什么方法可以启用调试以查看发生了什么、有多少连接处于事件状态以及连接何时打开或关闭?

我想看到这样的东西:

* connection xxx opened on host:port* connection yyy opened on host:port* connection xxx closed

最佳答案

  1. 要查看发送到 MongoDB 的命令,请设置 driver logger's级别为调试
  2. connection pool events使用react,只需订阅它们并自己登录即可。
  3. 您可能需要 topology monitoring对拓扑的变化使用react,例如连接到辅助 Node 或与副本集断开连接。
const client = new MongoClient('mongodb://127.0.0.1:27017/', {
useUnifiedTopology: true,
loggerLevel: 'debug',
// logger: (message, context) => console.dir(context),
})

// connection pool monitoring
client.on('connectionPoolCreated', event => console.dir(event))
client.on('connectionPoolClosed', event => console.dir(event))
client.on('connectionCreated', event => console.dir(event))
client.on('connectionReady', event => console.dir(event))
client.on('connectionClosed', event => console.dir(event))
client.on('connectionCheckOutStarted', event => console.dir(event))
client.on('connectionCheckOutFailed', event => console.dir(event))
client.on('connectionCheckedOut', event => console.dir(event))
client.on('connectionCheckedIn', event => console.dir(event))
client.on('connectionPoolCleared', event => console.dir(event))

// topology monitoring
client.on('serverDescriptionChanged', event => console.dir(event))
client.on('serverHeartbeatStarted', event => console.dir(event))
client.on('serverHeartbeatSucceeded', event => console.dir(event))
client.on('serverHeartbeatFailed', event => console.dir(event))
client.on('serverOpening', event => console.dir(event))
client.on('serverClosed', event => console.dir(event))
client.on('topologyOpening', event => console.dir(event))
client.on('topologyClosed', event => console.dir(event))
client.on('topologyDescriptionChanged', event => console.dir(event))

关于node.js - 如何在 node.js 和 mongoDB native 驱动程序上启用调试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12692339/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com