2017-08-30 102 views
0

我試圖將字符串長度字段添加到索引。理想情況下,我想使用kibana腳本功能,因爲我可以稍後'添加'此字段,但我不斷得到null_pointer_exception以下代碼...我試圖根據字段長度對可視化進行排序。將字段/字符串長度添加到logstash事件

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

這是正確的嗎?

我想這是因爲我的領域並非總是設置(稀疏數據),但我增加了?:0必須剷除(沒有工作)

任何想法?

+0

對不起,我不明白。你把這些代碼放在哪裏? – whites11

+0

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

回答

1

可以在Kibana定義腳本字段,類型爲int,語言無痛的,並嘗試這個辦法:

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

謝謝!哪裏可以找到對象文檔支持哪些屬性(值,長度)的參考? – geekscrap

+0

我會推薦無痛的文檔:https://www.elastic.co/guide/en/elasticsearch/painless/master/index.html,https://www.elastic.co/guide/en/elasticsearch/reference/主/模塊的腳本-painless.html。語法是groovy風格:http://groovy-lang.org – Imma