从consul API检索给定节点的服务标签jq
问题描述:
我想从consul API检索给定节点的ServiceTag(s)。我需要通过jq过滤。从consul API检索给定节点的服务标签jq
这里是节点&服务标签JQ戏查询,但我想ServiceTag给定节点..
随着服务标签 - https://jqplay.org/s/iaSIPnkxFm
随着节点 - https://jqplay.org/s/ea-LyKhhpy
任何人都可以请帮助我用jq查询将两者结合起来,为上述示例中的节点“my-app-1-2-3-4”提供服务标签“my-app-tag”。
答
不幸的是,给定的数据,给定的问题描述和给定的答案并不完全一致,可能是因为打字错误。
然而,问题描述对应于如下形式的查询:
[]检查[] |。选择(.Node == $ NODE)| .ServiceTags []
例如,与您的数据,并让$ NODE具有值 “我-AP-1-2-3-4” 的JQ查询:
.[].Checks[] | select(.Node == "my-ap-1-2-3-4") | .ServiceTags[]
产量:
"my-app-tag"