elasticsearch ElasticSearch中的数据类型IP,elasticsearch,logstash,elasticsearch,Logstash" /> elasticsearch ElasticSearch中的数据类型IP,elasticsearch,logstash,elasticsearch,Logstash" />

elasticsearch ElasticSearch中的数据类型IP

elasticsearch ElasticSearch中的数据类型IP,elasticsearch,logstash,elasticsearch,Logstash,我们正在通过logstash在ElasticSearch中推送数据。问题是,对于IP地址,它被存储为字符串,而不是IP数据类型。可以通过grok指定吗?我尝试了下面的代码,但似乎不起作用 ip { match => [ "ip", "IPV4" ] } 无法在logstash内部实现映射,因为无法在其中设置复杂类型: 默认情况下,所有语义都保存为字符串。如果你想转换 语义的数据类型,例如,将字符串更改为整数 用目标数据类型作为后缀。例如%{NUMBER:n

我们正在通过logstash在ElasticSearch中推送数据。问题是,对于IP地址,它被存储为字符串,而不是IP数据类型。可以通过grok指定吗?我尝试了下面的代码,但似乎不起作用

ip {             match => [ "ip", "IPV4" ]     }

无法在logstash内部实现映射,因为无法在其中设置复杂类型:

默认情况下,所有语义都保存为字符串。如果你想转换 语义的数据类型,例如,将字符串更改为整数 用目标数据类型作为后缀。例如%{NUMBER:num:int} 它将num语义从字符串转换为整数当前 唯一支持的转换是int和float。

然而,也存在一些问题

现在,您需要指定一个自定义。从属性部分开始并在其中添加一行:

"ip": { "type": "ip"},
将文件路径设置为日志存储配置中的
template.json

output {
    elasticsearch {
        # Your existing config
        template => "/path/to/your/template.json"
        template_overwrite => true
    }
}

请记住,模板仅适用于新索引。

谢谢您的帮助。