blob: 0e3890881cf7c9d84d1f453ee1b2c6bda739f37a (
plain) (
tree)
|
|
#!/bin/bash
TEMPLATE='{
"cmd": "submitcheck",
"token": $token,
"checkresult": [{
"hostname": $hostname,
"state": $state,
"output": $output,
"type": $type,
"servicename": $servicename
}]
}'
url="<%= @naemon_url %>"
token="<%= @naemon_token %>"
while getopts "u:t:H:s:S:o:" option
do
case $option in
u) url=$OPTARG ;;
t) token=$OPTARG ;;
H) hostname=$OPTARG ;;
s) servicename=$OPTARG ;;
S) state=$OPTARG ;;
o) output=$OPTARG ;;
esac
done
if [ -n "$servicename" ]; then
checktype="service"
else
checktype="host"
fi
payload=$(jq -n \
--arg type "$checktype" \
--arg hostname "$hostname" \
--arg servicename "$servicename" \
--arg output "$output" \
--arg token "$token" \
--arg state "$state" \
"$TEMPLATE")
rslt=$(curl -f --silent --insecure -d "$payload" -H "Content-Type: application/json" "$url")
ret=$?
if [ $ret != 0 ];then
echo "ERROR: could not connect to NRDP server at $url"
exit 1
fi
status=$(echo "$rslt" | jq -r .status)
message=$(echo "$rslt" | jq -r .message)
if [ "$status" != "ok" ];then
echo "ERROR: The NRDP Server said $message"
exit 2
fi
echo "Sent 1 checks to $url"
|