1
私は集計内でscripted_metricを使いたいと思います。私はスクリプト内にいくつかのパラメトリックな値を設定しています。これらのクエリごとに値を設定したいのですが、このクエリを作成することは可能ですか?私は私のパラメータ値は、どのように私の目的のために、この凝集を変更するためにしているelasticsearchにparametric scripted_metricを作成します
"aggs": {
"testAgg": {
"scripted_metric": {
"init_script": "_agg['maximum'] = []",
"map_script": "max = 0; for(tv in _source.tvs){ if(tv.att1>= param1 && tv.attr2 <= param2 && tv.att3 > max){max = tv.att3; }}; _agg.maximum.add(max);",
"combine_script": "sum = 0; for (m in _agg.maximum) { sum += m }; return sum;",
"reduce_script": "sum = 0; for (a in _aggs) { sum += a }; return sum;"
}
}
}
のparam1とPARAM2を探しています何のための例以下 ?
TNX :)
を指定することによって、それを行うことができます。 " "" type ":" script_exception "、 " reason: "インラインスクリプト[_agg ['maximum'] = []]を使用して実行できませんでしたlang [groovy]"、 "causes_by":{ "タイプ: "missing_property_exception"、 "reason": "このプロパティはありません:クラスの_agg: 61d7231114f6331ff30ad062a76adc50bd85e778 " } } –
" params "属性がないと正しく動作します。 –
どのESのバージョンがありますか?集計で[動的スクリプトを有効にする](https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-scripting.html#enable-dynamic-scripting)しましたか? – Val