elasticsearch:从字段中提取数字

Pir*_*ino 10 elasticsearch kibana

我正在使用elasticsearch和kibana来存储我的日志.现在我想要的是从一个字段中提取一个数字并存储一个新的字段.

例如,有这样的:

accountExist执行时间:1046 ms

我想提取数字(1046)并在kibana的新字段中看到它.

可能吗?怎么样?谢谢您的帮助

Pet*_*ses 5

您需要在索引编制之前/期间执行此操作.

在Elasticsearch中,您可以在索引编制期间获得所需内容:

  1. 使用Pattern Analyzer定义一个新的分析器来包装正则表达式(为了您的目的,捕获字符串中的连续数字 - 关于此主题的良好答案).
  2. 在映射中创建新的数字字段以保存提取的时间.
  3. 使用copy_to将日志消息从输入字段复制到(2)新数字字段,新分析器将对其进行解析.

分析API可用于测试目的有帮助.