curl 如何使用puppetdb API来合并事实

ercv8c1e  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(143)

我用的是 puppet 版5.3.6。
我可以查询puppetdb并获得许多有用的信息,如下所示:

$ curl -s -X GET http://localhost:8080/pdb/query/v4/facts --data-urlencode 'query=["extract", [["function","count"],"value"],["=","name","operatingsystem"],["group_by", "value"]]' | python -mjson.tool
[
    {
        "count": 339,
        "value": "OracleLinux"
    },
    {
        "count": 73,
        "value": "RedHat"
    }
]

字符串
并且:

$ curl -s -X GET http://localhost:8080/pdb/query/v4/facts --data-urlencode 'query=["extract", [["function","count"],"value"],["=","name","operatingsystemmajrelease"],["group_by", "value"]]' | python -mjson.tool
[
    {
        "count": 38,
        "value": "5"
    },
    {
        "count": 217,
        "value": "6"
    },
    {
        "count": 157,
        "value": "7"
    }
]


如何将两者结合在一起,并将每个Oracle/Red Hat版本和主要版本组合在一个易于查看的视图中?我尝试了几种不同的方法来做到这一点,但我无法找到任何示例或文档来向我解释如何做到这一点。
其他有用的组合是特定DC中运行operatingsystemmajrelease 6的所有Red Hat服务器(或显示所有服务器?)。
这将是非常有用的。

8ftvxx2r

8ftvxx2r1#

老问题,但我有类似的问题。我解决了它:

curl -s -X GET http://localhost:8080/pdb/query/v4/inventory -d 'query=["extract", [["function", "count"],"facts.operatingsystem","facts.operatingsystemrelease"],["group_by","facts.operatingsystem","facts.operatingsystemrelease"]]'

字符串

相关问题