ELK 查询语法

前言

主要是针对 discover查询中与或非条件的使用介绍,贴了一些的示例

定义查询条件 A: *ImAbstractObject, B: 910001584, C: H_GOODS.

逻辑操作. 多个条件组合

与、或、非 三种关系

  • 或 AND(大写) : 表示与
    默认(缺省) 或 OR(大写):表示或
  • 或 NOT(大写): 表示非

场景一:求并集,多个条件任意满足

数学符号: A ∪ B ∪ C (A 或 B 或 C)
三个条件满足一个即可 (默认是并集)。 下面两个截图表示的是同一个含义,两种写法
这里写图片描述

这里写图片描述

场景二: 求交集,多个条件均需满足

数学符号表示为: ( A ∩ ﹁B ) ∪ ( (A ∩ ﹁B ∩ C )
可等效简化为: A ∩ ﹁B
tip: 这个表示的信息,和数学上的条件组合有所差别. 如果想表示 (A ∩ ﹁B) ∪ C. 请使用分组, 用()包含起来,见下面的场景
以下查询条件表示: A必须存在,B必须不存在,C可有可无.
这里写图片描述

这里写图片描述

场景三 条件取反,不包含某个条件

数学符号:(A ∩ ﹁B) ∪ C
以下表示:(A ∩ ﹁B) ∪ C . 即 (A 且 非B) 或 C .
下面的小括号表示对条件进行分组. 括号的优先级最高。
查询条件表示:(结果集1:A必须存在,B必须不存在) U (结果集2:C必须存在) 这两个结果集的并集
这里写图片描述
这里写图片描述

对字段查询

单字段查询

message中,(A ∩ ﹁B) ∩ C
这里写图片描述

多字段查询

message字段和host字段都必须满足下面输入的查询条件
这里写图片描述


网上摘抄的示例

http://blog.csdn.net/wzygis/article/details/52100425
全文搜索
在搜索栏输入login,会返回所有字段值中包含login的文档

使用双引号包起来作为一个短语搜索
“like Gecko”
这里写图片描述

字段
也可以按页面左侧显示的字段搜索
限定字段全文搜索:field:value
精确搜索:关键字加上双引号 filed:“value”
http.code:404 搜索http状态码为404的文档

字段本身是否存在
exists:http:返回结果中需要有http字段
missing:http:不能含有http字段

通配符
? 匹配单个字符

  • 匹配0到多个字符

kiba?a, el*search

? * 不能用作第一个字符,例如:?text *text
正则
es支持部分正则功能
mesg:/mes{2}ages?/

模糊搜索
:在一个单词后面加上启用模糊搜索

first~ 也能匹配到 frist

还可以指定需要多少相似度
cromm~0.3 会匹配到 from 和 chrome
数值范围0.0 ~ 1.0,默认0.5,越大越接近搜索的原始值

近似搜索
在短语后面加上~
“select where”~3 表示 select 和 where 中间隔着3个单词以内

范围搜索
数值和时间类型的字段可以对某一范围进行查询
length:[100 TO 200]
date:{“now-6h” TO “now”}
[ ] 表示端点数值包含在范围内,{ } 表示端点数值不包含在范围内

逻辑操作
AND
OR

+:搜索结果中必须包含此项
-:不能含有此项
+apache -jakarta test:结果中必须存在apache,不能有jakarta,test可有可无

分组
(jakarta OR apache) AND jakarta

字段分组
title:(+return +“pink panther”)

转义特殊字符

    • && || ! () {} [] ^" ~ * ? : \

以上字符当作值搜索的时候需要用\转义

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Ansible是一种自动化工具,可以帮助您简化和自动化部署、配置和管理服务器和应用程序。要使用Ansible部署ELK(Elasticsearch、Logstash和Kibana),您可以按照以下步骤进行操作: 1. 安装Ansible:在您的控制机上安装Ansible。您可以根据操作系统的不同,使用适当的方法进行安装。 2. 创建Ansible Inventory:创建一个Ansible Inventory文件,其中包含您要部署ELK的目标服务器的信息。您可以指定主机IP地址、用户名和密码等详细信息。 3. 创建Ansible Playbook:使用YAML语法创建一个Ansible Playbook文件,用于定义ELK部署的任务和步骤。您可以在Playbook中指定需要安装的软件包、配置文件、服务启动等操作。 4. 编写Ansible Roles:根据需要,可以使用Ansible Roles来组织和管理Playbook中的任务。Roles可以将相关的任务分组,并使Playbook更易于维护和扩展。 5. 执行Ansible Playbook:使用ansible-playbook命令执行您编写的Playbook文件。Ansible将自动连接到目标服务器,并按照您定义的步骤进行ELK部署。 6. 验证ELK部署:完成部署后,验证ELK堆栈是否正常工作。您可以通过访问Elasticsearch、Logstash和Kibana的Web界面,并尝试发送和搜索日志数据来进行验证。 请注意,以上步骤仅为概述,并且在实际部署过程中可能需要进行一些特定配置和调整。建议您参考Ansible和ELK的官方文档以获取更详细的部署指南和最佳实践。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值