logstash 未映射到索引中的值
logstash not mapping to values in indices
我有一个示例日志
2016-12-28 16:40:53.290 [debug] <0.545.0> <<"{\"user_id\”:\”79\”,\”timestamp\":\"2016-12-28T11:10:26Z\",\"operation\":\"ver3 - Requested for recommended,verified handle information\",\"data\":\"\",\"content_id\":\"\",\"channel_id\":\"\"}">>
我为此编写了一个 logstash grok 过滤器
filter{
grok {
match => { "message" => "%{URIHOST} %{TIME} %{SYSLOG5424SD} <%{BASE16FLOAT}.0> <<%{QS}>>"}
}
}
在 http://grokdebug.herokuapp.com/ 中一切正常,值正在使用过滤器进行映射。
当我使用此过滤器将值推送到弹性搜索时,它没有被映射,并且仅在消息中我得到了整个日志。
如果我做错了什么,请告诉我。
您的 kibana 屏幕截图未加载,但我会猜测:您正在捕获模式,而不是将数据命名 到字段中。区别如下:
%{TIME}
将在您的数据中寻找该模式。调试器将显示 "TIME" 已被解析,但 logstash 不会在未被询问的情况下创建字段。
%{TIME:myTime}
将创建该字段(您可以在调试器中看到它正在运行)。
您需要对要保存的任何匹配模式执行此操作。
我有一个示例日志
2016-12-28 16:40:53.290 [debug] <0.545.0> <<"{\"user_id\”:\”79\”,\”timestamp\":\"2016-12-28T11:10:26Z\",\"operation\":\"ver3 - Requested for recommended,verified handle information\",\"data\":\"\",\"content_id\":\"\",\"channel_id\":\"\"}">>
我为此编写了一个 logstash grok 过滤器
filter{
grok {
match => { "message" => "%{URIHOST} %{TIME} %{SYSLOG5424SD} <%{BASE16FLOAT}.0> <<%{QS}>>"}
}
}
在 http://grokdebug.herokuapp.com/ 中一切正常,值正在使用过滤器进行映射。
当我使用此过滤器将值推送到弹性搜索时,它没有被映射,并且仅在消息中我得到了整个日志。
如果我做错了什么,请告诉我。
您的 kibana 屏幕截图未加载,但我会猜测:您正在捕获模式,而不是将数据命名 到字段中。区别如下:
%{TIME}
将在您的数据中寻找该模式。调试器将显示 "TIME" 已被解析,但 logstash 不会在未被询问的情况下创建字段。
%{TIME:myTime}
将创建该字段(您可以在调试器中看到它正在运行)。
您需要对要保存的任何匹配模式执行此操作。