无限循环等待变量值更改,并在mongo shell中每30秒检查一次

困惑地

在我连接到mongo-shell的地方编写bash脚本。我有以下输出rs.status()我必须等待其中一个成员将的值更改stateStrSecondary在下面的输出中,您现在可以看到它显示为Not active我想编写一个无限循环,该循环将遍历所有成员,并stateStr每隔30秒检查一次,直到出现Secondary

"members" : [
  { "stateStr" : "Not active" },
  { "stateStr" : "PRIMARY" },
  { "stateStr" : "ARBITER" }
],

这是我到目前为止的内容:

mongo --host ${other_host} ${ssl_mode} <<EOF
    while (true){
            for (i = 0; i <= 2; i++){
                    if (rs.status().members[i].stateStr == "SECONDARY") {
                            break;
                    }
            }
    }
    rs.status();
EOF

但是,这并没有打破无限循环。我想每30秒检查一次。我怎么做?

克里斯蒂安·弗里茨
mongo --host ${other_host} ${ssl_mode} << EOF
  while (rs.status().members.every(e => e.stateStr != "SECONDARY")) {
    sleep(1000);  
  }
  rs.status();
  EOF

请注意,我还添加了sleep,以避免繁忙的等待。


更新1:如果您的mongo版本稍旧,则您可能无法使用箭头功能,需要将其拼写如下:

  while (rs.status().members.every(function(e) { return e.stateStr != "SECONDARY"; })) {

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

每5秒更改一次变量值并返回

来自分类Dev

JavaScript循环每30秒调用一次不同的函数

来自分类Dev

javascript每5秒无限循环一次

来自分类Dev

加载“ ...”循环,每3秒更改一次文本

来自分类Dev

如何在每 30 秒后更改 Javascript 中的变量值

来自分类Dev

在python中每x秒运行一次循环以废弃网站

来自分类Dev

在Unity3D c#中每10秒更改一次相机颜色

来自分类Dev

如何在HTML中每15秒更改一次图像

来自分类Dev

如何在HTML中每15秒更改一次图像

来自分类Dev

在 react.js 中每 3 秒更改一次图像

来自分类Dev

每X秒执行一次PHP循环

来自分类Dev

如何每 5 秒更改一次文本

来自分类Dev

如何每 x 秒更改一次状态

来自分类Dev

在Android Studio 1.1.0中中断变量值更改吗?

来自分类Dev

如何使用样式Laravel中的{{$ percentage}}变量值更改Bootstrap进度条的宽度?

来自分类Dev

Angular 7:在ts文件更改后如何保持html中的变量值更新

来自分类Dev

每X秒显示一次警报框,但先等待Y秒

来自分类Dev

在 Heroku 中每 30 秒运行一次任务

来自分类Dev

自定义阵列适配器中的对象上的ImageLevel每100毫秒更改一次

来自分类Dev

我想使用计时器在 winform 中每 1 秒更改一次背景色

来自分类Dev

Unix中循环外的变量值

来自分类Dev

更改子类中的变量值?

来自分类Dev

更改LLDB中的Int变量值

来自分类Dev

从活动中更改片段的变量值

来自分类Dev

VBS中的MSGbox使用变量值更新

来自分类Dev

测试一个每10秒重复一次的循环

来自分类Dev

使用mgo驱动程序,Mongo连接计数每10秒爬行一次

来自分类Dev

如何使用dispatchertimer每30秒检查一次而又不影响c#中的UI?

来自分类Dev

jQuery循环并每X秒运行一次(单击)函数

Related 相关文章

热门标签

归档