簡體   English   中英

NodeJS Bunyan Logstash日志索引

[英]NodeJS Bunyan Logstash Log Indexing

我正在使用Bunyan和bunyas-lumberjack將我的日志發送到日志存儲並在彈性搜索中將它們編入索引。 我面臨的問題是當我過濾日志時:我正在使用Logstash的基本過濾器:

filter {
 if [type == "json"]{
        json {
                source => "message"
        }
   }
}

將Bunyan中的JSON放入source.message字段並在彈性搜索中對其進行索引。 如何將bunyan中的每個字段編入特定的彈性搜索字段,以便我可以搜索它或在Kibana中使用它?

我附上我現在獲得的東西和我想要獲得的東西作為例子。 目前:

{
  "_index": "logstash-2015.10.26",
  "_type": "json",
  "_id": "AVCjvDHWHiX5VLMgQZIC",
  "_score": null,
  "_source": {
    "message": "{\"name\":\"myLog\",\"hostname\":\"atnm-4.local\",\"pid\":6210,\"level\":\"error\",\"message\":\"This should work!\",\"@timestamp\":\"2015-10-26T10:40:29.503Z\",\"tags\":[\"bunyan\"],\"source\":\"atnm-4.local/node\"}",
    "@version": "1",
    "@timestamp": "2015-10-26T10:40:31.184Z",
    "type": "json",
    "host": "atnm-4.local",
    "bunyanLevel": "50"
  },

通緝:

{
  "_index": "logstash-2015.10.26",
  "_type": "json",
  "_id": "AVCjvDHWHiX5VLMgQZIC",
  "_score": null,
  "_source": {
    "message": {
      "name": example,
      "hostname": example,
      "etc": example

logstash中的每個輸入可以具有不同的編解碼器和類型。 在你的情況下,如果你想索引bunyan和syslog,你將有兩個不同類型的輸入。 syslog將具有編解碼器“plain”,bunyan將具有“json”。 bunyan消息不需要任何過濾器。 將解析json並且字段將自動顯示。 您必須有一個過濾器來解析syslog輸入。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM