Kibana使用教程

Kibana

1. 导入数据

  • Filebeat安装好之后,只要配置上写了发送给Elasticsearch,那么打开es-head的时候,就会发现在es里面已经由filebeat的索引。
  • 直接开Kibana,5601端口

这个反正把es的数据调出来,然后导入到kinana里面

这一页就是开始使用了,这些日期,内容,各种过滤器叠加使用之类的。

2. 数据搜索

  • 指定时间范围,还能自动刷新
  • 左上角的键值筛选

这个只要选中statuscode,is not,后面跟200就行了,虽然完整的值是200 OK,不过看来这个is not只要写一部分就可以匹配了。

  • 点到左边的字段名上之后

可以很直观地看到这个字段下面值的直方图分布

  • 搜索搜到了之后,跳到某个条目的上下文

点开这一条的详细文档,然后就能跳到上下文上去,看着一条记录上上下下,就是遵从原来分布的那些

  • 柱状图看时间和数量

3. 经验之谈

(1) 把json解析那一块去掉了

input {
  beats {
    port => 5044
    }
}

filter {
  grok {
       match => { "message" => "\[%{TIMESTAMP_ISO8601:timestamp}\]\s+(GatewayMessage:\s+)(\|)%{DATA:url}(\|)%{DATA:methodvalue}(\|)%{DATA:queryParams}(\|)%{DATA:remote}(\|)%{DATA:statusCode}(\|)%{DATA:time}(\|)%{GREEDYDATA:response}" }
        remove_field => ["message"]
  }
#  json {
#       source => "response"
#       target => "jsonresponse"
#  }
  geoip {
        source => "remote"
        remove_field => ["[geoip][latitude]", "[geoip][longitude]",
        "[geoip][region_code]", "[geoip][country_name]", "[geoip][continent_code]",
        "[geoip][location]", "[geoip][country_code3]", "[geoip][ip]", "[geoip][country_code2]",
        "[geoip][timezone]"]
        }
#  mutate {
#       remove_field =>["response"]
#  }
}

output{
    elasticsearch {
        hosts=>["39.100.144.125:9200"]
        index => "logstash-%{+YYYY.MM.dd}" #对日志进行索引归档
    }

    #stdout{codec => rubydebug}
}

原来是把json解析算进去的,由于要解析的json太大了,logstash如果卡时间的话,会产生日志丢失,于是把这一块去掉了。

(2) Kibana必须用@timestamp

如果建立index pattern的时候不用这个,之后会没有办法用时间来进行筛选,就是右上角那个东西会没有掉。

(3) x-pack

Kibana里面现在的监视已经是免费的了,推荐使用MatriBeat,不过目前没这东西,点心跳的时候,点下面那个使用内部收集的也可以。
反正这个直接就能用,根本不需要什么安全设置。

(4) 日志使用思路

从Kibana的仪表盘开始看,看出统计规律之后,然后去discover那一页去搜符合这个条件的日志。

你可能感兴趣的:(Kibana使用教程)