转换
Elastic Stack Serverless
有效负载转换 处理和更改监视执行上下文中的有效负载,以便为监视操作做好准备。 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}}"
}
}
]
}
- 监视级别
transform
- 操作级别
transform