ペイロード変換
*ペイロード変換*は、ウォッチ実行コンテキスト内のペイロードを処理し、ウォッチアクションの準備を行います。ウォッチャーは、3種類のペイロード変換をサポートしています:
ペイロード変換はオプションです。定義されていない場合、アクションはウォッチ入力によって読み込まれたペイロードにアクセスできます。
ペイロード変換は2つの場所で定義できます:
- ウォッチ定義のトップレベル構造として。この場合、ペイロードはウォッチアクションが実行される前に変換されます。
- アクションの定義の一部として。この場合、ペイロードはそのアクションが実行される前に変換されます。変換は、その特定のアクションのペイロードにのみ適用されます。
すべてのアクションが同じペイロードのビューを必要とする場合、ウォッチ定義の一部としてペイロード変換を定義します。各アクションが異なるペイロードのビューを必要とする場合、アクション定義の一部として異なるペイロード変換を定義し、各アクションが独自の専用ペイロード変換によって準備されたペイロードを持つようにします。
以下の例では、ウォッチレベルで1つ、my_webhook
アクションの定義の一部として1つのペイロード変換を定義しています。
Js
{
"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 |