Как мне динамически настраивать действия наблюдателя ElasticSearch с помощью Expression script?

#elasticsearch #groovy #expression #elasticsearch-watcher

#elasticsearch #groovy #выражение #elasticsearch-наблюдатель

Вопрос:

Мое Input предложение выдает значение A и другое значение B , и я хочу отправить уведомление по электронной почте с некоторым текстом, который содержит результат A/B в нем. У меня была ранняя версия, которая работала локально, где я использовал Groovy script в Transform предложении, поэтому у меня была новая переменная, ctx.payload.result содержащая результат A/B , но elastic.co позволит мне использовать Expression scripts только из соображений безопасности. Я также пытался разрешить выражение, встроенное в тег тела {{var}} электронного письма, но, по-видимому, это не разрешает выражения.

Помните, я не могу использовать Groovy для изменения полезной нагрузки. Есть идеи?

Комментарии:

1. Что вы подразумеваете под «elastic.co»?

2. Я имею в виду управляемый облачный сервис ElasticSearch, размещенный на elastic.co

Ответ №1:

Облако Elastic также позволяет пользователям включать скрипты Groovy (по умолчанию отключены). Со страницы создания кластера Cloud:

Elasticsearch может использовать скрипты для реализации гибкого ранжирования, фильтрации, фасетирования и многого другого. Важно ограничить их использование, поскольку они позволяют выполнять произвольный код. При включении изолированных сценариев в версии 5.0 включен безболезненный язык сценариев. В более старых версиях будут включены языки «expression» и «mustache». При включении всех скриптов будут доступны Groovy и любой язык, предоставляемый плагинами.

Комментарии:

1. Это то, что я имел в виду под соображениями безопасности . Я не могу просто включить бесплатные сценарии в производственной среде … =/