2017-08-30 7 views
0

インデックスに文字列長フィールドを追加しようとしています。理想的には、私は後でこのフィールドを追加することができますが、null_pointer_exceptionを次のコードで取得しています。フィールドの長さに基づいて視覚化をソートしようとしています。ログシュートイベントにフィールド/文字列の長さを追加する

doc['field'].value ? doc['field'].length() : 0 

これは間違いありませんか?

任意のアイデア

(動作しませんでした)私は私のフィールドは常に(スパースデータ)に設定されていないので、それはだと思ったが、私はそれを戦うために?:0を追加しましたか?

+0

申し訳ありません。このコードはどこに置いたのですか? – whites11

+0

https://www.elastic.co/guide/en/kibana/current/scripted-fields.html – geekscrap

答えて

1

あなたは、int型、Kibanaでスクリプトフィールドを定義する言語無痛、およびこれを試すことができます:私は理解していない

return (doc['field'].value != null? doc['field'].value.length(): 0); 
+0

ありがとう!オブジェクトdocがサポートするプロパティ(値、長さ)の参照は、どこで見つけることができますか? – geekscrap

+0

私は痛みのないドキュメントをお勧めします:https://www.elastic.co/guide/en/elasticsearch/painless/master/index.html、https://www.elastic.co/guide/en/elasticsearch/reference/ master/modules-scripting-painless.htmlを参照してください。構文はグルーヴィースタイルです:http://groovy-lang.org – Imma

関連する問題