ELK
分布式系统引入的新问题 日志 分布在多台机器上。
为什么要分析日志
1 问题调试
ES
插件 kopf
logstash
输入插件 文件 , stdin, twitter ,lumberjack, redis
输入插件会增加字段 如 timestamp
过滤插件 drop , mutate,
输出插件 csv, email, elasticsearch, ganglia, kafka,mongodb, stdout
编解码 json, avro, plain
Elasticsearch
Kibana
时间过滤器
自动刷新间隔 默认off
点击 直方图 也会触发 时间过滤器
自由文本搜索
https://lucene.apache.org/core/2_9_4/queryparsersyntax.html
AND
“push” AND “teacher”
OR
“push” OR “teacher”
NOT 包含push 不含 teacher
“push” NOT “teacher”
分组
(“push” OR “teacher”) AND “unicast”
通配符搜索
teache* 将搜索 teacher 或者 teacherBinding
teache? teacher 或者 teachea
? * 不能作为搜索条件的首字母
字段搜索
title:"teacher"
范围搜索
date_of_record: [2014 TO 2015]
组合
date_of_record: [2014 TO 2015] AND title: "teacher"
特殊字符
-
- && || ! ( ) { } [ ] ^ " ~ * ? : \
如果要查询1:2 需要转义成 1:2
filter for value +
搜索可以 NEW SAVE 以便 作可视化。