设置Logstash& ElasticSearch用于自定义日志结构

时间:2014-02-13 05:31:35

标签: json elasticsearch logstash

我正在尝试使用https://github.com/jlecren/logserver设置logstash转发到redis / logstash / elasticsearch(注意 - 这是我第一次尝试使用这些,所以我可能有些错误)。

但是,我想发送到弹性搜索的日志不是标准日志格式(它是自定义应用程序)。它们已经是JSON格式,所以我只是想把它们转发到redis。

我正在使用logstash和此配置将JSON转发到redis:

input {
   file {
      path => "/tmp/*.json"
      tags => "restserver"
      codec => "json"
   }
}

output {
  stdout { codec => rubydebug }
  redis { host => "192.168.33.101" data_type => "list" key => "logstash" }
}

我正在尝试了解如何格式化JSON输出,以便我们可以在ES之后使用kibana进行搜索。但是,我想我不知道如何创建ES模板,以及如何正确格式化字段。

作为第一关,我开始使用这种JSON格式(注意 - 这只是第一次传递,需要添加更多字段):

{
  "@timestamp": "2014-02-06T15:23:10-0000",
  "tags": {
    "serial": "XX2013111111",
    "command": "Thumbnail"
  },
  "ip": "10.6.1.21",
  "source": "XX2013111111",
  "fields": {
    "type": "Thumbnail",
    "controller": "Image",
    "thumbnail": {
      "datetaken": [
        "2014-02-06T13:22:35"
      ],
      "name": [
        "DCIM\\IMG_008736.JPG"
      ]
    }
  },
  "message": "....."
}

但是,我对标签,字段以及如何在ES中创建模板感到困惑(我想我需要这样做,对吧?)。

是否有关于新日志格式以及如何集成到logstash / kibana / ES的指南?

0 个答案:

没有答案