所以,我有一个Web平台,每个请求打印一个
JSON文件,其中包含有关该请求的一些日志数据.我可以配置几个规则关于什么时候应该记录的东西,只有在某些级别等…
现在,我一直在使用Logstash Elasticsearch Kibana3堆栈,我很想找到一种方法来查看基巴那的那些日志.我的问题是,有没有办法使Logstash导入这些类型的文件,或者我必须为它编写一个自定义输入插件?我已经搜索到了,我看到的插件是用Ruby编写的,这是一种我没有经验的语言.
解决方法
Logstash只是将各种syslog文件转换为JSON并将其加载到弹性搜索(或石墨或…)中的工具.
由于您的文件已经是JSON,所以不需要logstash.您可以使用卷曲直接上传到弹性搜索.
见Import/Index a JSON file into Elasticsearch
但是,为了与Kibana一起工作,您的JSON文件最少需要.
>平 – Kibana不嵌套嵌套的JSON结构.您需要键/值对的简单哈希.
>具有可识别的时间戳.
我会建议查看JSON文件logstash输出,看看是否可以按你的JSON文件来匹配那个结构.你可以用你的任何语言来做到这一点
像这样支持JSON.程序jq非常方便地将json从一种格式过滤到另一种格式.
Logstash格式 – https://gist.github.com/jordansissel/2996677