如何在查询中访问数组的对象?

时间:2019-04-23 14:54:40

标签: python arrays mongodb position salt-stack

我目前正在为我的学校从事一个项目。目的是分析盐堆栈生成的日志文件。我已经在盐堆栈中设置了MongoDB和MONGO_FUTURE_RETURN返回器。 我想通过python脚本分析日志文件。 Eveything已连接,并且诸如db.saltReturns.find()之类的基本查询可以正常工作。

由于我不想重写调整器,并且我的程序需要访问其他对象,因此需要类似“ Object.Everything.nestedObject”的东西。

为弄清我的意思,我附上了一段数据,并向您展示了我想访问的内容。

我已经尝试使用$,$ each和$ []-它们都不能解决我的问题。

                "fun_args" : [ ],
                "jid" : "20190423135733454092",
                "return" : {
                        "cmd_|-sssd-ldap-cmd-pam-auth-update-bugfix_|-/usr/local/bin/bugfix-682662-sh_|-wait" : {
                                "comment" : "No changes detected",
                                "start_time" : "13:58:22.852410",
                                "result" : true,
                                "duration" : 0.016,
                                "__run_num__" : 26,
                                "__sls__" : "sssd-ldap.install",
                                "changes" : {

                                }
                        },
"pkg_|-salt-minion-required-packages_|-salt-minion-required-packages_|-installed" : {
                                "comment" : "All specified packages are already installed",
                                "name" : "python-concurrent.futures",
                                "start_time" : "13:58:18.915102",
                                "result" : true,
                                "duration" : 24.703,
                                "__run_num__" : 5,
                                "__sls__" : "salt-minion.install",
                                "changes" : {

                                },
                                "__id__" : "salt-minion-required-packages"
                        }
...
                }

在我的脚本中,我想访问:

"full_ret.return.[all].comment"

我需要的是一个可以代替[all]占位符的位置运算符。

1 个答案:

答案 0 :(得分:0)

我搜索了许多论坛和文档,但是找不到用于mongoDB查询的通配符运算符。遗憾的是,这似乎是一项无法实现的功能。