Watcher 脚本负载转换
编辑Watcher 脚本负载转换
编辑一个负载转换,它在 Watch 执行上下文中对当前负载执行脚本,并将其替换为新生成的负载。以下代码片段展示了如何在 Watch 级别定义一个简单的脚本负载转换
执行的脚本可以返回一个有效的模型,该模型等效于 Java™ Map 或 JSON 对象(您需要查阅特定脚本语言的文档以了解此构造是什么)。返回的任何其他值都将被分配,并且可以/通过 _value
变量访问。
script
属性可以包含一个字符串值,在这种情况下,它将被视为内联脚本,并将采用默认的 Elasticsearch 脚本语言(如 脚本 中所述)。您可以使用 Elasticsearch 支持的其他脚本语言。为此,您需要将 script
字段设置为一个对象,该对象描述脚本及其语言。下表列出了可以配置的可能设置
表 91. 脚本负载转换设置
名称 | 必需 | 默认值 | 描述 |
---|---|---|---|
|
是 |
- |
当使用内联脚本时,此字段包含脚本本身。 |
|
是 |
- |
当引用存储的脚本时,此字段包含脚本的 ID。 |
|
否 |
|
脚本语言 |
|
否 |
- |
脚本可以访问的其他参数/变量 |
当使用脚本的对象表示法时,必须定义 inline
或 id
字段中的一个(且只有一个)。
除了提供的 params
之外,脚本还可以访问标准 Watch 执行上下文参数。