第十五章·Kibana深入-Dev Tools及Lucene语法
Dev Tools介绍
Dev Tools 页面包含开发工具,您可以使用这些Dev Tools与Kibana中的数据进行交互。
原先的交互式控制台Sense,使用户方便的通过浏览器直接与Elasticsearch进行交互。从Kibana 5开始改名并直接内建在Kibana,就是Dev Tools选项。
Kibana提供了Console UI来通过REST API与Elasticsearch交互,Console位于Kibana的Dev Tools栏下。Console有两个主要区域,左边是编辑区用来书写REST请求,右边用来显示请求返回结果。
自动提示 |
Console提供了自动提示功能,可以为你提供API、方法等提示。编写完请求后点击绿色执行按钮,会在右侧面板给出请求结果。执行按钮旁边的“小扳手”按钮,可以将请求copy转化为curl(copy),还有一个功能就是自动缩紧格式(Auto Indent)。如果对已经锁进好的代码进行Auto Indent,Console会将请求体(body)缩进在一行中。

多请求查询 |
Console支持多请求查询,只需要你将左侧选中执行即可。Console会一次请求Elasticsearch返回结果,多个请求也允许一下复制curl,非常方便。
![-c](media/15550434441190/15550443382225.jpg)
![-c](media/15550434441190/15550444612390.jpg)
----
快捷键 |
Console提供了一些快捷键,来提高使用效率。
快捷键 | 说明 |
---|---|
ctrl/cmd + enter | 提交请求 |
ctrl/cmd + alt/option + L | 叠起/打开当前代码 |
ctrl/cmd + up/down | 跳到上一个或下一个执行块 |
ctrl/cmd + I | 缩进格式 |
esc | 关闭当前提示框 |
历史 |
点击Console的顶部有History,会显示最近500条请求成功的历史纪录。左侧显示历史纪录,点击其中一条后会在右侧显示。

点击apply会自动copy到下面的Console编辑区,点击Clear会清空所有历史请求。
配置(Setting) |
Console提供了一些基础配置,比如字体大小等。

关闭Console(Setting) |
如果不想使用Console可以在$KIBANA/config/kibana.yml中设置:
console.enabled: false
这样就关闭了Console了,不过重启Kibana过程比较慢,需要几分钟。
Dev Tools常用查询命令
上传日志 |
不管在学任何开发语言,我们第一个学的都是"Hello World"
仪式感
PUT hello_world

match_all查询所有索引包括内容 |
GET _search
{
"query": {
"match_all": {}
}
}

查询所有索引名称 |
也就是查看一下我们在ES中有多少个日志
GET _cat/indices

查询集群节点是否禁用swap |
GET _nodes?filter_path=**.mlockall
#结果
{
"nodes": {
"by_wSvKYQ5ycGlHxW0UWoQ": {
"process": {
"mlockall": false
}
},
"iYV6jXoFQsaJJCTBXtaoWA": {
"process": {
"mlockall": false
}
}
}
}

查询集群节点最大文件描述符 |
GET _nodes/stats/process?filter_path=**.max_file_descriptors
#结果
{
"nodes": {
"by_wSvKYQ5ycGlHxW0UWoQ": {
"process": {
"max_file_descriptors": 131072
}
},
"iYV6jXoFQsaJJCTBXtaoWA": {
"process": {
"max_file_descriptors": 131072
}
}
}
}

集群分片情况查询 |
GET _cat/shards

Lucene 语法介绍
全文搜索 |
在搜索栏输入404,会返回所有字段值中包含404的日志
使用双引号包起来作为一个短语搜索"like Gecko"
字段搜索 |
也可以按页面左侧显示的字段搜索
限定字段全文搜索:field:value
精确搜索:关键字加上双引号filed:"value"
status:404
搜索http状态码为404的日志
字段本身是否存在_exists_:http
:返回结果中需要有http字段_missing_:http
:不能含有http字段
通配符搜索 |
?
匹配单个字符*
匹配0到多个字符
可以看到两次搜索内容左上角,第一次是109 hits,第二次是182 hits
第一次匹配到的内容只有109条,第二次有182条。
?
*
不能用作第一个字符,例如:?status
*status
正则搜索 |
es支持部分正则功能,性能较差domain:/adm?n.vantage(fx[prime]).com.cn/
模糊搜索 |
quikc~
brwn~
foks~
~
:在一个单词后面加上~启用模糊搜索,可以搜到一些拼写错误的单词
first~
这种也能匹配到 frist
还可以设置编辑距离(整数),指定需要多少相似度cromm~1
会匹配到 from 和 chrome
默认2,越大越接近搜索的原始值,设置为1基本能搜到80%拼写错误的单词
近似搜索 |
在短语后面加上~
,可以搜到被隔开或顺序不同的单词"where select"~5
表示 select 和 where 中间可以隔着5个单词,可以搜到 select password from users where id=1
范围搜索 |
数值/时间/IP/字符串
类型的字段可以对某一范围进行查询length:[100 TO 200]
sip:["172.24.20.110" TO "172.24.20.140"]
date:{"now-6h" TO "now"}
tag:{b TO e}
搜索b到e中间的字符count:[10 TO *] *
表示一端不限制范围count:[1 TO 5} [ ]
表示端点数值包含在范围内,{ } 表示端点数值不包含在范围内,可以混合使用,此语句为1到5,包括1,不包括5
可以简化成以下写法:age:>10
age:<=10
age:(>=10 AND <20)
优先级 |
quick^2 fox
使用使一个词语比另一个搜索优先级更高,默认为1,可以为0~1之间的浮点数,来降低优先级
逻辑操作 |
AND
OR
+
:搜索结果中必须包含此项-
:不能含有此项+apache -jakarta test aaa bbb
:结果中必须存在apache,不能有jakarta,剩余部分尽量都匹配到
分组 |
(elasticsearch OR logstash) AND elasticsearch
字段分组 |
title:(+return +"pink panther")
host:(baidu OR qq OR google) AND host:(com OR cn)
转译特殊字符 |
+ - = && || > < ! ( ) { } [ ] ^ " ~ * ? : \ /
以上字符当作值搜索的时候需要用\转义\(1\+1\)\=2
用来查询(1+1)=2
第十五章·Kibana深入-Dev Tools及Lucene语法的更多相关文章
- 第十五章 LVM管理和ssm存储管理器使用 随堂笔记
第十五章 LVM管理和ssm存储管理器使用 本节所讲内容: 15.1 LVM的工作原理 15.2 创建LVM的基本步骤 15.3 实战-使用SSM工具为公司的邮件服务器创建可动态扩容的存储池 LVM的 ...
- 15第十五章UDF用户自定义函数(转载)
15第十五章UDF用户自定义函数 待补上 原文链接 本文由豆约翰博客备份专家远程一键发布
- 《Linux命令行与shell脚本编程大全》 第十五章 学习笔记
第十五章:控制脚本 处理信号 重温Linux信号 信号 名称 描述 1 HUP 挂起 2 INT 中断 3 QUIT 结束运行 9 KILL 无条件终止 11 SEGV 段错误 15 TERM 尽可能 ...
- CSS3秘笈复习:十三章&十四章&十五章&十六章&十七章
第十三章 1.在使用浮动时,源代码的顺序非常重要.浮动元素的HTML必须处在要包围它的元素的HTML之前. 2.清楚浮动: (1).在外围div的底部添加一个清除元素:clear属性可以防止元素包围浮 ...
- Gradle 1.12用户指南翻译——第四十五章. 应用程序插件
本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...
- Gradle 1.12 翻译——第十五章. 任务详述
有关其他已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或访问:http://gradledoc.qiniudn.com ...
- Gradle 1.12用户指南翻译——第二十五章. Scala 插件
其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://g ...
- Gradle 1.12用户指南翻译——第三十五章. Sonar 插件
本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...
- “全栈2019”Java多线程第三十五章:如何获取线程被等待的时间?
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...
随机推荐
- Java日志体系(二)log4j
1.1 简介 Log4j是一个由Java编写可靠.灵活的日志框架,是Apache旗下的一个开源项目: 使用Log4j,我们更加方便的记录了日志信息,它不但能控制日志输出的目的地,也能控制日志输出的内容 ...
- Java数组(2):数组与泛型
通常,数组与泛型不能很好的结合,你不能实例化具有参数化类型的数组.擦除会移除参数类型信息,而数组必须知道它们所持有的确切类型.但是我们可以参数化数组本身. import java.util.Array ...
- BN和L2 NORM的区别
bn是拉平各个feature的差异,而l2 norm是拉平各个样本的差异,本来各个样本的模长千变万化,按照距离的概念,差别是很大的,但是l2 norm后,距离就变得有一个上界了,显然样本间差异变小了. ...
- vue如何监听键盘事件中的按键?
原文地址 背景 在一些搜索框中,我们往往需要监听键盘的按下(onkeydown)或抬起(onkeyup)事件以进行一些操作.在原生js或者jQuery中,我们需要判断e.keyCode的值来获取用户所 ...
- Spring Boot Lombok配置
Spring Boot Lombok配置 依赖添加 dependencies { annotationProcessor 'org.projectlombok:lombok:1.18.2' compi ...
- python基础知识(循环语句)
for循环.while循环.循环嵌套 for 迭代变量 In 对象: 循环体 range(start,end,step) 第一个和第三个可以省略生成一系列的连续整数 start 包括起始值 end ...
- EasyTouch5插件使用 EasyTouch手势检测功能
(1)导入EasyTouch5插件,注意该插件对Unity有版本要求 (2)首先在场景中创建一个EasyTouch,这个是必需的,它是进行检测的核心组件,场景中有任何物体使用了EasyTouch的东西 ...
- sql中级语句
创建联结 select n_title,n_content,t_name,t_memo from nrc_news,nrc_type where nrc_news.t_id=nrc_type.t_id ...
- 某某网站PHP
在网站域名后输入:e/tool/gbook/?bid=1并回车,这样就打开了“帝国”CMS的留言功能.触发漏洞的步骤为: Step1.在“姓名”处输入:縗 Step2.在“联系邮箱”处输入:,1,1, ...
- Linux安装redis logstash
一.安装redis tar -zxvf redis-3.2.8.tar.gz cd redis-3.2.8 make && make install PREFIX=/usr/loca ...