Как отформатировать результат запроса в формате json в шаблоне сообщения действия

#kibana #mustache #elasticsearch-opendistro

#kibana #усы #elasticsearch-opendistro

Вопрос:

Я использую Opendistro для создания оповещения и вызова пользовательского webhook для отправки предупреждения. Я бы хотел, чтобы Opendistro отправлял результат запроса в сообщении. Единственная проблема заключается в том, что формат результата не json, а что-то близкое.

Например, если шаблон сообщения (усы) выглядит следующим образом

 {{{ctx.results.0}}}
  

Мой веб-хук может получить что-то вроде этого

 {_shards={total=30, failed=0, successful=30, skipped=0}, hits={hits=[], total=3, max_score=0.0}, took=16, timed_out=false, aggregations={aggregation={doc_count_error_upper_bound=0, sum_other_doc_count=0, buckets=[{doc_count=3, key=1.1.1.1}]}}}
  

который является результатом запроса, но не отформатирован как json. Я хотел бы знать, есть ли способ вывести комплексную переменную в виде json в шаблоне mustache или есть способ проанализировать приведенный выше формат. Или, может быть, в контексте доступна другая переменная, которая уже является строковой?

Я нашел это другое сообщение на форуме Opendistro, которое раскрывает ту же проблему.

Ответ №1:

В качестве обновления в опубликованной вами ссылке с форума OpenDistro доступно решение. Я проверил, что это работает хорошо.

 {{#toJson}}ctx.results.0{{/toJson}}