【问题标题】:Logstash - Elesticsearch - Kibana : Store logs over tcp-input and show it in KibanaLogstash - Elesticsearch - Kibana : 通过 tcp-input 存储日志并在 Kibana 中显示
【发布时间】:2015-05-14 17:09:29
【问题描述】:

我正在尝试设置 logstash、elasicsearch 和 Kibana 以实现日志的可视化。 日志应该通过TCP发送到logstash,过滤,输出到ES-index,然后在kibana中显示。

我要发送到 logstash 的消息:

msg_to_tcp="id=1324 type=error name=system_name"

logstash.conf:

input{
   tcp {
      host => localhost
      port => 55555
     }
}
filter {
   kv {} 
   mutate {
      convert => ["id" , "integer"]
   }
}
output {
   elasticsearch {
       host => localhost
       port => 9200
    } 
}

用法:logstash 1.4.2、elasticsearch 1.4.4 和 kibana 4

不幸的是,将 id 转换为整数不起作用。 Kibana 告诉我它仍然是一个字符串。

我也尝试在 kibana 中使用“脚本过滤器”,它只会导致错误。

Integer.parseInt(doc["id"].value)

有人可以帮我将“id”转换为整数吗?

【问题讨论】:

    标签: elasticsearch logstash kibana-4


    【解决方案1】:
    • 从 elasticsearch 中删除现有索引并创建一个具有适当映射的新索引,即,如果您希望 id 为整数,则在创建索引时将 id 列数据类型创建为整数。

      PUT indexname
      {
       "mappings": {
           "mappingname": {
              "properties": {
              "id": {
              "type": "integer"
            },
            "name": {
              "type": "string"
            }   
      
              }
           }
        }
      
      }
      
    • 然后为logstash创建grok过滤器来识别字段值如下

      input{
      tcp {
            host => localhost
            port => 55555
           }
      }
      filter {
         grok {
                  match => {
                      "message" => "id=%{NUMBER:id}\s*type=%{WORD:type}\s*name=%{WORD:name}"
                  }
      
              }
      }
      output {
         elasticsearch {
             host => localhost
             port => 9200
          } 
      }
      

    现在试试上面的解决方案,希望能成功!!

    【讨论】:

      【解决方案2】:

      在进行此更改之前,您是否删除了任何已经存在的索引?如果没有,您无法更改 ElasticSearch 索引使用的模板,其中包括每个字段的类型。相反,您必须创建一个新索引并将数据填充到其中。如果要使用相同的索引名称,则需要先删除现有索引。

      【讨论】:

      • 感谢您的回复。我从头开始!所以我正在尝试使用新的 ES-index。我仍然没有解决这个问题
      猜你喜欢
      • 1970-01-01
      • 2019-12-09
      • 1970-01-01
      • 1970-01-01
      • 2014-10-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多