Below is my bash script:
#!/bin/bash message=$1 hostname=$2 appname=$3 severity=$4 data='{"action":"EventsRouter","method":"add_event","data":[{"summary":"'$message'","device":"'$hostname'","message":"message","component":"'$appname'","severity":"'$severity'","evclasskey":"nxlog","evclass":"nxlog","monitor":"localhost"}],"type":"rpc","tid":2}' echo "Total number of args : $#" echo "message = $message" echo "hostname = $hostname" echo "appname = $appname" echo "data = $data" curl -u "Eve:Welcome666" -k "https://myurlcom/zport/dmd/evconsole_router" -d $data -H "Content-Type:application/json"
and my error is:
Total number of args : 4 message = mes hostname = hos appname = sev data = {"action":"EventsRouter","method":"add_event","data":[{"summary":"mes","device":"hos","message":"message","component":"sev","severity":"ap","evclasskey":"nxlog","evclass":"nxlog","monitor":"localhost"}],"type":"rpc","tid":2} {"uuid": "9b66e70d-44fc-463d-a347-786fe5502c13", "action": "EventsRouter", "result": {"msg": "Failed to create event: NoRouteException: Reply code: 312, Reply text: NO_ROUTE, Exchange:zenoss.zenevents.raw, Routing key: zenoss.zeneventnxlog", "type":"exception", "success": false}, "tid": 2, "type": "rpc", "method": "add_event"}
However, when i curl a data directly, it is working.
curl -u Eve:Welcome666 -k https://myurl.com/zport/dmd/evconsole_router -d '{"action":"EventsRouter", "method":"add_event","data":[{"summary":"test","device":"test","message":"msg","component":"testhost","severity":"5", "evclasskey":"nxlog", "evclass":"/nxlog/perf","monitor":"localhost"}],"type":"rpc","tid":2}' -H "Content-Type:application/json" {"uuid": "1654584c-5f86-489e-a5e7-35d45e462066", "action": "EventsRouter", "result": {"msg": "Created event", "success": true},"tid": 2, "type": "rpc", "method": "add_event"}