Elasticsearch-将存储的脚本安装到文件系统

时间:2020-03-20 08:47:36

标签: elasticsearch elasticsearch-painless

我拥有一个带有4个节点的EL 7.6.1集群。

我要安装一些存储的脚本。 进入文档(https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-scripting-using.html和),我只读到关于发送带有这样的东西的POST ...

POST _scripts/calculate-score
{
  "script": {
    "lang": "painless",
    "source": "Math.log(_score * 2) + params.my_modifier"
  }
}

但是我想安装那些脚本,将它们放入文件系统中。

我也读过this,但不起作用。

如果我将这些脚本复制到scripts文件夹中,则不会出现任何异常(既不在日志中,也不在GET _cluster / state / metadata中?pretty&filter_path = **。stored_scripts)。

我的脚本看起来像这样... build_user_sessions_init_script.painless

这些权限

root@thorin:/# ls -la scripts/build_user_sessions_init_script.painless
-rw-r--r-- 1 elasticsearch elasticsearch 119 Mar 20 08:56 scripts/build_user_sessions_init_script.painless

使用此代码。

root@thorin:# cat build_user_sessions_init_script.painless 
state.all_queries = [];

文档中是否有一些地方可以读取有关从文件系统安装存储的脚本的信息? 有想法吗?

1 个答案:

答案 0 :(得分:0)

基于文件的脚本现已被弃用,并由Stored scripts代替。

唯一的线索是... elastic/elasticsearch#24552elastic/elasticsearch#24555