Watcher 500 Server Error

I've upgraded es and Kibana from 5.6.4 to 6.0.1, when attempting to view the 'watcher' from within Kibana>Management I get a 'Watcher: Error 500 Internal Server Error: An internal server error occurred' error.

Kibana logs report ..

Error: json argument must contain a watchStatusJson property
at Function.getPropsFromUpstreamJSON (/usr/share/kibana/plugins/x-pack/plugins/watcher/server/models/watch/base_watch.js:90:13)
at Function.fromUpstreamJSON (/usr/share/kibana/plugins/x-pack/plugins/watcher/server/models/watch/monitoring_watch.js:51:13)
at Function.fromUpstreamJSON (/usr/share/kibana/plugins/x-pack/plugins/watcher/server/models/watch/watch.js:41:22)
at (/usr/share/kibana/plugins/x-pack/plugins/watcher/server/routes/api/watches/register_list_route.js:41:24)
at (native)

I had no 'watches' set up prior to the upgrade other than the default 4 that get created,

I've tried deleting the .watches, not sure what else to try.

Hi @cadab,

Can you post the result of searching against the .watches index?

curl -XPOST <ES>/.watches/_search


I am having a similar issue. We have 60+ watches setup, and after doing an infrastructure refresh, and loading the watches via the API, none* of them are firing. I'm receiving the following error:


"message":"json argument must contain a watchStatusJson property",
"message":"json argument must contain a watchStatusJson property",
"stack":"Error: json argument must contain a watchStatusJson property\n at Function.fromUpstreamJSON (/usr/share/kibana/plugins/x-pack/plugins/watcher/server/models/watch_status/watch_status.js:123:13)\n at new WatchHistoryItem (/usr/share/kibana/plugins/x-pack/plugins/watcher/server/models/watch_history_item/watch_history_item.js:16:36)\n at Function.fromUpstreamJSON (/usr/share/kibana/plugins/x-pack/plugins/watcher/server/models/watch_history_item/watch_history_item.js:42:12)\n at executeWatch.then.hit (/usr/share/kibana/plugins/x-pack/plugins/watcher/server/routes/api/watch/register_execute_route.js:38:51)\n at bound (domain.js:280:14)\n at runBound (domain.js:293:12)\n at tryCatcher (/usr/share/kibana/node_modules/bluebird/js/main/util.js:26:23)\n at Promise._settlePromiseFromHandler (/usr/share/kibana/node_modules/bluebird/js/main/promise.js:503:31)\n at Promise._settlePromiseAt (/usr/share/kibana/node_modules/bluebird/js/main/promise.js:577:18)\n at Promise._settlePromises (/usr/share/kibana/node_modules/bluebird/js/main/promise.js:693:14)\n at Async._drainQueue (/usr/share/kibana/node_modules/bluebird/js/main/async.js:123:16)\n at Async._drainQueues (/usr/share/kibana/node_modules/bluebird/js/main/async.js:133:10)\n at Immediate.Async.drainQueues (/usr/share/kibana/node_modules/bluebird/js/main/async.js:15:14)\n at runCallback (timers.js:666:20)\n at tryOnImmediate (timers.js:639:5)\n at processImmediate [as _immediateCallback] (timers.js:611:5)"



What information from the
curl -XPOST /.watches/_search are you looking for? Since we have some many watches it will be difficult to post the entire response.

So this seems to be happening only when I try to simulate the watch. Running a request directly to elasticsearch gives me the desired results:
curl -XPOST '' -H 'Content-Type: application/json' -d'{"trigger_data" : { "triggered_time" : "now","scheduled_time" : "now"},"ignore_condition" : true, "action_modes" : {"my-action" : "force_simulate" },"record_execution" : true }'

I ran the above request from my kibana instance, which is the same instance I am trying to run the simulation in.

I as have these setup on a cron schedule, they seem to be firing correctly as well. Any ideas why I can't get the simulation to work?

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.