ELK查询技巧
# 查询指定字段同时包含多个内容1
message:(+"内容1" +"内容2" +"内容3")
message:("内容1" AND "内容2" AND "内容3")
1
2
3
2
3
# 多个字段同时查询
+message:"" + log_id:java*
message:"" AND log_id:java*
1
2
3
2
3
# 通配符
? 匹配单个字符
* 匹配0到多个字符
例如:
log_id:java* 查询log_id 为java开头的
注意:? * 不能用作第一个字符,例如:?text 或 *text
1
2
3
4
5
6
7
2
3
4
5
6
7
# 逻辑操作符
AND
OR
+:搜索结果中必须包含此项
-:不能含有此项
+aaa -bbb test ccc ddd:结果中必须存在aaa,不能有bbb,剩余部分尽量都匹配到
1
2
3
4
5
6
2
3
4
5
6
# 分组
(aaa OR bbb) AND ccc 存在 aaa或bbb 和 ccc
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)
time:["2021-08-19T03:17:07.056Z" TO "2021-08-19T03:17:08.056Z"]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
上次更新: 2022/12/08, 20:28:36