Kibana
1. 導(dǎo)入數(shù)據(jù)
- Filebeat安裝好之后,只要配置上寫了發(fā)送給Elasticsearch誊辉,那么打開es-head的時候,就會發(fā)現(xiàn)在es里面已經(jīng)由filebeat的索引亡脑。
- 直接開Kibana堕澄,5601端口
這個反正把es的數(shù)據(jù)調(diào)出來,然后導(dǎo)入到kinana里面
這一頁就是開始使用了霉咨,這些日期蛙紫,內(nèi)容,各種過濾器疊加使用之類的躯护。
2. 數(shù)據(jù)搜索
- 指定時間范圍惊来,還能自動刷新
- 左上角的鍵值篩選
這個只要選中statuscode,is not棺滞,后面跟200就行了裁蚁,雖然完整的值是200 OK,不過看來這個is not只要寫一部分就可以匹配了继准。
- 點到左邊的字段名上之后
可以很直觀地看到這個字段下面值的直方圖分布
- 搜索搜到了之后枉证,跳到某個條目的上下文
點開這一條的詳細(xì)文檔,然后就能跳到上下文上去移必,看著一條記錄上上下下室谚,就是遵從原來分布的那些
- 柱狀圖看時間和數(shù)量
3. 經(jīng)驗之談
(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如果卡時間的話秒赤,會產(chǎn)生日志丟失猪瞬,于是把這一塊去掉了。
(2) Kibana必須用@timestamp
如果建立index pattern的時候不用這個入篮,之后會沒有辦法用時間來進行篩選陈瘦,就是右上角那個東西會沒有掉。
(3) x-pack
Kibana里面現(xiàn)在的監(jiān)視已經(jīng)是免費的了潮售,推薦使用MatriBeat痊项,不過目前沒這東西,點心跳的時候酥诽,點下面那個使用內(nèi)部收集的也可以鞍泉。
反正這個直接就能用,根本不需要什么安全設(shè)置肮帐。
(4) 日志使用思路
從Kibana的儀表盤開始看咖驮,看出統(tǒng)計規(guī)律之后,然后去discover那一頁去搜符合這個條件的日志泪姨。