1

我在 node.js 中使用 cassandra-driver 模块。我的用例是当 Cassandra 节点由于某种原因关闭时,我在 UI 中发出通知说“数据库处于关闭状态”。

基本上,一旦 casssandra 出现故障,我应该能够在 node.js 中使用 cassandra-driver 捕获信息

任何帮助表示赞赏。

4

2 回答 2

0

您可以定期检查client.hosts已关闭的节点。或者最好定义像, etc.这样的钩子hostDown,并使用它们来决定集群是否不可用。

于 2020-01-05T19:21:39.130 回答
0

对于我正在使用的临时解决方案,client.hosts 不起作用

client.on('log', (level, className, message, furtherInfo) => {

if(level === 'error' && ['NoHostAvailableError', 'OperationTimedOutError'].includes(furtherInfo.name)) {

emitNotification('DB_IS_DOWN');

});

如果有人有更好的解决方案,非常欢迎您。

注意:这个解决方案非常适合我!

于 2020-01-06T04:31:02.153 回答