有效负载转换
编辑有效负载转换
编辑有效负载转换 会处理和更改监视执行上下文中的有效负载,以便为监视操作做好准备。Watcher 支持三种类型的有效负载转换:
有效负载转换是可选的。如果未定义任何转换,则操作可以访问监视输入加载的有效负载。
可以在两个地方定义有效负载转换:
- 作为监视定义中的顶级结构。在这种情况下,会在执行任何监视操作之前转换有效负载。
- 作为操作定义的一部分。在这种情况下,会在执行该操作之前转换有效负载。转换仅应用于该特定操作的有效负载。
如果所有操作都需要相同的有效负载视图,请将有效负载转换定义为监视定义的一部分。如果每个操作都需要不同的有效负载视图,请将不同的有效负载转换定义为操作定义的一部分,以便每个操作都拥有其专用有效负载转换准备的有效负载。
以下示例定义了两个有效负载转换,一个在监视级别,另一个作为 my_webhook
操作定义的一部分。
{ "trigger" : { ...} "input" : { ... }, "condition" : { ... }, "transform" : { "search" : { "request": { "body" : { "query" : { "match_all" : {} } } } } }, "actions" : { "my_webhook": { "transform" : { "script" : "return ctx.payload.hits" }, "webhook" : { "host" : "host.domain", "port" : 8089, "path" : "/notify/{{ctx.watch_id}}" } } ] }