首页 > 解决方案 > 用于监控 API json 响应的 Bash 脚本

问题描述

我想监控下面的健康检查 URL。如果 mongodb 进入断开状态,我需要生成警报。我写了一个bash脚本。似乎它仍然无法正常工作。有什么可以帮忙的吗?谢谢

何时对https://www.example.com/healthz进行健康检查,结果如下:{"mongodb":"connected","redis":"connected"}

我的 bash 脚本是

#!/bin/bash
DATA=$(wget --timeout 5 -O - -q -t 1 example.com/healthz)
MESSAGE=$(jq '.Disconnected' <<< "$DATA")
if [[ "$MESSAGE" == '"Success"' ]] ;

标签: jsonlinuxbashshellsh

解决方案


一个可能使用的例子jq是:

jq '.mongodb == "disconnected" or .redis == "disconnected"'

(它将返回truefalse)。

您可以在js此处找到 eg 的文档:https ://stedolan.github.io/jq/manual


推荐阅读