使用ELK替换预定义映射的值

时间:2015-02-21 10:03:46

标签: elasticsearch logstash kibana

我有一个用Logstash读取的文件,其中包含一个名为type的特定参数。此参数的可能值为0,1,2,3,4,5(实际上在我的Java代码中表示为Enum)。

假设0表示书,1表示报纸,2表示杂志等。

目前我的Logstash过滤器直接将此参数作为数字写入,但我想在Kibana Dashboards上显示可以显示值(例如book)而不是数字的面板(即0 )。

是否有可能在Kibana级别的预定义值列表中添加替换或映射?或者我应该在具有if条件的Logstash级别手动执行此映射吗?什么是最好的方法?

2 个答案:

答案 0 :(得分:1)

您将无法在Kibana级别进行替换,因此如果只有少数选项,最好使用if语句。

如果你想做一些更容易维护的事情,你可能想看看这个答案:https://stackoverflow.com/a/26062949/2785358我写了一个插件,可以用来读取.csv文件,然后使用它使用CSV文件中的数据丰富您的活动。

答案 1 :(得分:0)

我已经通过Google网上论坛得到了我认为最好的答案。

可以通过以下链接找到答案:https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!msg/elasticsearch/88dajXfzSwk/80gVTXws8VcJ

它基本上建议我使用Logstash的翻译过滤器:http://logstash.net/docs/1.4.2/filters/translate 我认为这是最好的解决方案。