2017-02-20 4 views
0

У меня есть ряд API (служб), работающих на нескольких машинах (агентах), и эти службы имеют какие-то проверки работоспособности. Я хотел реализовать часы, которые будут вызывать уведомление при каждом изменении статуса службы. После прочтения документации консулом, это то, как он должен выглядеть следующим образом:Как использовать часы Consul на агенте, работающем в Windows?

consul watch -type=checks -service=myservice handler_script.ps1 

Моя проблема с обработчиком. Я написал небольшой скрипт PowerShell, который выводит на скрипт JSON каждый раз, когда происходит изменение. Но когда я запускаю сценарий, открывается блокнот с содержимым сценария PowerShell. Мои вопросы таковы:

  • Что я делаю неправильно?

И в качестве бонусного вопроса: могу ли я сделать это программно? Например, при регистрации услуг.

Спасибо.

+0

https://www.automatedops.com/blog/2015/06/01/monitoring-with-powershell-and-consul/ –

+0

Привет @DavidBrabant. У меня есть проверки на месте (и один из них выглядит точно так). То, что мне нужно, - это статья, указанная в этом документе (https://www.vividcortex.com/blog/2015/05/22/consul-for-cluster-health-monitoring/). В этой статье есть Watch, делающий что-то похожее на то, что я хочу (хотя это в сценарии bash), но я не знаю, как и где установить Watch. Спасибо –

ответ

0

Я предполагаю, что консул не знает, как запускать файлы .ps1. Вместо этого попробуйте cmd /c powershell.exe handler_script.ps1.

Смежные вопросы