为什么要介绍lucene:我们在ELK中搜索相关日志的时候,搜索语言需要遵循Lucene才可以匹配到需要的信息

什么是LuceneLucene是一套用于全文检索和搜寻的开源程式库,由Apache软件基金会支持和提供

参考:

https://lucene.apache.org/core/2_9_4/queryparsersyntax.html#NOT

http://www.lucenetutorial.com/lucene-query-syntax.html


1 
全文搜索(有空格一定要 用双引号 引起来)

举例 搜索含有my
name的字符串

"my name"因为中间有空格,所有需要用双引号引起来。

2 字段搜索
可以按页面左侧显示的字段搜索
限定字段全文搜索: field:value 
精确搜索:关键字加上双引号 filed:"value" 
http.code:404 搜索http状态码为404的文档
字段本身是否存在
_exists_:http :返回结果中需要有http字段
_missing_:http :不能含有http字段

举例: 
a. 搜索domainname为search.s.xxx.com的
domainname:search.s.d.xxx.com 
写法或者
domainname:"search.s.d.xxx.com"

b.搜索状态为400的 或者200的
status:404

c.范围值有
status:[400 TO 499]

与与操作 公用
status:500 AND remote_addr:X.X.X.X
或者
status:500 AND remote_addr:"X.X.X.X"

status:200 AND
remote_addr:X.X.X.X

非且与
(NOT status:200) AND remote_addr:X.X.X.X

匹配 非status为200 的起remote_add是 X.X.X.X的
status:502 AND domainname:www.XXX.com

"png" NOT "A.XXX.com"
NOT "=png"

3 通配符
? 匹配单个字符
* any 
+ >=0
? * 不能用作第一个字符,例如: ?text *text

4 逻辑操作
AND 
OR
+ :搜索结果中必须包含此项
- :不能含有此项
+apache -jakarta test :结果中必须存在apache,不能有jakarta,test可有可无
分组
(jakarta OR apache) AND jakarta
字段分组
title:(+return +"pink panther")
转义特殊字符
+ - && || ! () {} [] ^" ~ * ? : \ 
以上字符当作值搜索的时候需要用 \ 转义

lunces语法: 不匹配v2字符串
domainname:"B.XXX.com"
AND -request:"v2"

“-”操作符或者禁止操作符排除含有”-”后面的相似项的文

lucene查询语法简介的更多相关文章

  1. Lucene查询语法详解

    Lucene查询 Lucene查询语法以可读的方式书写,然后使用JavaCC进行词法转换,转换成机器可识别的查询. 下面着重介绍下Lucene支持的查询: Terms词语查询 词语搜索,支持 单词 和 ...

  2. kibana使用(ELK)、Lucene 查询语法

    Lucene查询 Lucene查询语法以可读的方式书写,然后使用JavaCC进行词法转换,转换成机器可识别的查询. 下面着重介绍下Lucene支持的查询: Terms词语查询 词语搜索,支持 单词 和 ...

  3. query_string查询支持全部的Apache Lucene查询语法 低频词划分依据 模糊查询 Disjunction Max

    3.3 基本查询3.3.1词条查询 词条查询是未经分析的,要跟索引文档中的词条完全匹配注意:在输入数据中,title字段含有Crime and Punishment,但我们使用小写开头的crime来搜 ...

  4. Lucene查询语法汇总

    目录 一.单词查询 二.通配符查询 三.模糊查询 四.近似查询 五.范围查询 六.优先级查询 七.逻辑操作 八.括号分组 九.转义特殊字符 Lucene是目前最为流行的开源全文搜索引擎工具包,提供了完 ...

  5. ELK:kibana使用的lucene查询语法【转载】

    kibana在ELK阵营中用来查询展示数据 elasticsearch构建在Lucene之上,过滤器语法和Lucene相同 全文搜索 在搜索栏输入login,会返回所有字段值中包含login的文档 使 ...

  6. ELK:kibana使用的lucene查询语法

    kibana在ELK阵营中用来查询展示数据elasticsearch构建在Lucene之上,过滤器语法和Lucene相同 kibana4官方演示页面 全文搜索 在搜索栏输入login,会返回所有字段值 ...

  7. kibana使用的lucene查询语法

    kibana在ELK阵营中用来查询展示数据elasticsearch构建在Lucene之上,过滤器语法和Lucene相同 kibana4官方演示页面 全文搜索 在搜索栏输入login,会返回所有字段值 ...

  8. Lucene学习总结之八:Lucene的查询语法,JavaCC及QueryParser

    一.Lucene的查询语法 Lucene所支持的查询语法可见http://lucene.apache.org/java/3_0_1/queryparsersyntax.html (1) 语法关键字 + ...

  9. Lucene学习总结之八:Lucene的查询语法,JavaCC及QueryParser 2014-06-25 14:25 722人阅读 评论(1) 收藏

    一.Lucene的查询语法 Lucene所支持的查询语法可见http://lucene.apache.org/java/3_0_1/queryparsersyntax.html (1) 语法关键字 + ...

随机推荐

  1. 一篇文章理清WebGL绘制流程

    转自:https://www.jianshu.com/p/e3d8a244f3d9 目录 初始化WebGL环境 顶点着色器(Vertex Shader)与片元着色器(Fragment Shader) ...

  2. [日常] 高性能MySQL-索引

    1.mysql的索引工作类似一本书的目录部分,想找某个特定主题,先查找书的目录部分,找到对应的页码2.ORM工具只能生成基本的合法的查询3.索引是在存储引擎层实现的,不是服务器层4.B-tree就是指 ...

  3. Evolution(矩阵快速幂)zoj2853

    Evolution Time Limit: 5 Seconds      Memory Limit: 32768 KB Description Evolution is a long, long pr ...

  4. Fragment的坑

    http://www.jianshu.com/p/d9143a92ad94 使用add()加入fragment时将触发onAttach(),使用attach()不会触发onAttach() 使用rep ...

  5. Codeforces675D(SummerTrainingDay06-J)

    D. Tree Construction time limit per test:2 seconds memory limit per test:256 megabytes input:standar ...

  6. 华中农业大学第五届程序设计大赛网络同步赛-G

    G. Sequence Number In Linear algebra, we have learned the definition of inversion number: Assuming A ...

  7. JavaScript高级编程——引用类型、Array数组使用、栈方法

    JavaScript高级编程——引用类型.Array数组使用.栈方法 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999 ...

  8. BZOJ5323:[JXOI2018]游戏

    传送门 不难发现,所有不能被其他数筛掉的数是一定要选的,只有选了这些数字才能结束 假设有 \(m\) 个,枚举结束时间 \(x\),答案就是 \(\sum \binom{x-1}{m-1}m!(n-m ...

  9. drupal7获取当前theme的路径

    //方式一 $theme_path=drupal_get_path('theme', $theme); //方式二 $theme_path=path_to_theme();

  10. 1-1 sacc(scss)入门

    定义: CSS 预处理器定义了一种新的语言,其基本思想是,用一种专门的编程语言,为 CSS 增加了一些编程的特性,将 CSS 作为目标生成文件,然后开发者就只要使用这种语言进行编码工作. 通俗的说,“ ...