Kibana分为发现、可视化、仪表板等功能
Discover功能如下:
1、New Save Open Share
New:新建查询
Save:保存当前查询语句
Open:打开已保存的查询语句,点击可执行搜索查询
Share:复制当前搜索结果的URL,可分享别人查看当前查询
2、时间选择器
默认是最近15分钟。
可按照三种当时选择日期:
Quick:已存在若干最近XXX时间段的日期筛选链接。点击后即可搜索出符合该段时间的全部日志
Relative:
Absolute:绝对查询,可选择日历控件指定查询的起止期年月日时分秒。
3、搜索框
查询分为以下几种:
项(Term)
一条搜索语句被拆分为项(term)和操作符(operator)。项有两种类型:单独项和短语。
单独项就是一个单独的单词,例如"where" , "Select"。
短语是一组被双引号包围的单词,例如”hello dolly”。
多个项可以用布尔操作符连接起来形成复杂的查询语句(AND OR )。
域(Field)
可以指定在某一个域中搜索,或者就使用默认域。域名及默认域是具体索引器实现决定的。kibana的默认域就是message …. message会包含你所有日志。目前默认的域是_source
搜索语法是: 域名+”:”+搜索的项名。
appName:XXXUsercenter AND message:Sync driver information start
appName:XXXBifrost AND message:adaptation
项修饰符(Term Modifiers)
支持项修饰符以便更宽范围的搜索选项。
kibana默认是lucene搜索的,一些模糊搜索是可以用通配符,Lucene支持单个与多个字符的通配搜索。
使用符号”?”表示单个任意字符的通配。
使用符号”*”表示多个任意字符的通配。
单个任意字符匹配的是所有可能单个字符。例如,搜索”text或者”test”,可以这样:
te?t
多个任意字符匹配的是0个及更多个可能字符。例如,搜索test, tests 或者 tester,可以这样:
test*
也可以在字符串中间使用多个任意字符通配符。
te*t
模糊查询
模糊搜索只需要在单独项的最后加上符号”~”。例如搜索拼写类似于”test”的项这样写:
test~
可搜索到形如tester和tested的单词。
注意:使用模糊查询将自动得到增量因子(boost factor)为0.2的搜索结果.
邻近搜索(Proximity Searches)
邻近搜索是在短语最后加上符号”~”。例如在文档中搜索相隔10个单词的”apache”和”jakarta”,这样写:
“can packageAgreement” ~2
布尔操作符
布尔操作符可将项通过逻辑操作连接起来。支持AND, “+”, OR, NOT 和 “-”这些操作符。(注意:布尔操作符必须全部大写)
OR
OR操作符是默认的连接操作符。这意味着如果两个项之间没有布尔操作符,就是使用OR操作符。OR操作符连接两个项,意味着查找含有任意项的文档。这与集合并运算相同。符号||可以代替符号OR。
比如:有select或者insert
select OR insert
AND
AND操作符匹配的是两项同时出现的内容。这个与集合交运算相等。符号&&可以代替符号AND。
比如:必须有select和where
select AND where
+
“+”操作符或者称为存在操作符,要求符号”+”后的项必须在文档相应的域中存在。
比如:必须有insert,可以没有job_execution_detail_log
+Insert job_execution_detail_log
-
“-”操作符或者禁止操作符,排除含有”-”后面的相似项的文档。
比如:
+“ UPDATE job_execution_detail_log” -“FROM job_execution_detail_log”
NOT
NOT操作符排除那些含有NOT符号后面项的文档。这和集合的差运算相同。符号!可以代替符号NOT。
比如:
select NOT where
注意:NOT操作符不能单独与项使用构成查询。例如,以下的查询查不到任何结果:NOT select
分组(Grouping)
支持使用圆括号来组合字句形成子查询。
比如:
(select OR Insert) NOT job_execution_detail_log