ELK常用语法和线上问题排查

ELK常用语法及线上问题排查

速查问题

1.全文搜索

在搜索栏输入目标值,查询所有字段中包含该值的文档

案例:用户反馈了一串id或者其他同事给了一个jobid,还没有头绪怎么查的时候,直接全局搜索
jobid

2.字段

限定字段全文搜索: field:value

通配符限定:

?:匹配单个字符

  • :匹配多个字符
    案例:查询uid是 XXX 的请求
    uid:xxx
    案例:查询uid是 XXX 开头的请求
    uid:xxx* 或者 uid:xxx?

3.范围搜索

对数值/时间/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)

案例:查询今天请求耗时在1秒以上的请求或0秒到2秒之间的请求

rt:1 TO 2

rt:>1

案例:请求IP在183.131.12.222 到 183.131.12.233

ip:183.131.12.222 TO 183.131.12.233

4.逻辑操作

AND:且

OR:或

NOT: 非

案例:查询日志级别是ERROR且不含日期解析错误的请求

level:ERROR AND NOT msg:交易日期解析出错

案例:查询日志界别是WARN,排除指定程序

level:WARN AND (NOT pn:capitalinfo) AND (NOT pn:mq-stock-mqprofitinfo)

案例:非200的请求

图表

我们不会时时刻刻盯着日志看,对于自己负责的程序,绘制一些简单的图表,可以帮助我们了解程序的健康状况

常用的聚合字段

Count count 聚合返回选中索引模式中元素的原始计数。

Average 这个聚合返回一个数值字段的 average 。从下拉菜单选择一个字段。

Sum sum 聚合返回一个数值字段的总和。从下拉菜单选择一个字段。

Min min 聚合返回一个数值字段的最小值。从下拉菜单选择一个字段。

Max max 聚合返回一个数值字段的最大值。从下拉菜单选择一个字段。

Unique Count cardinality 聚合返回一个字段的去重数据值。从下拉菜单选择一个字段。

Standard Deviation extended stats 聚合返回一个数值字段数据的标准差。从下拉菜单选择一个字段。

Percentile percentile 聚合返回一个数值字段中值的百分比分布。从下拉菜单选择一个字段,然后在 Percentiles 框内指定范围。点击 X 移除一个百分比框,点击 +Add 添加一个百分比框。

Date Histogram date histogram 基于数值字段创建,由时间组织起来。你可以指定时间片的间隔,单位包括秒,分,小时,天,星期,月,年。

Histogram 标准 histogram 基于数值字段创建。为这个字段指定一个整数间隔。勾选 Show empty buckets 让直方图中包含空的间隔。

Range 通过 range 聚合。你可以为一个数值字段指定一系列区间。点击 Add Range 添加一对区间端点。点击红色 (x) 符号移除一个区间。

Date Range date range 聚合计算你指定的时间区间内的值。你可以使用 date math 表达式指定区间。点击 Add Range 添加新的区间端点。点击红色 (/) 符号移除区间。

IPv4 Range IPv4 range 聚合用来指定 IPv4 地址的区间。点击 Add Range 添加新的区间端点。点击红色 (/) 符号移除区间。

Terms terms 聚合允许你指定展示一个字段的首尾几个元素,排序方式可以是计数或者其他自定义的metric。

Filters 你可以为数据指定一组 filters。你可以用 querystring(全文搜索简易检所语法),也可以用 JSON 格式来指定过滤器,就像在 Discover 页的搜索栏里一样。点击 Add Filter 添加下一个过滤器

Significant Terms 展示实验性的 significant terms 聚合的结果。

案例:线上程序ERROR,WARN,INFO日志级别的占比

案例:出现ERROR的程序占比

案例:出现ERROR的IP占比

案例:请求量

案例:非200的请求量

...

操作台

当我们拥有很多监控图表后,把同一类或者我们更关心的图表归类在一起,一眼就可以了解全局

相关推荐
g10565591395 天前
ELK企业日志分析系统
elk
梅菲塔亚9 天前
ELK企业日志分析系统实战部署
elk
逐流人10 天前
ELK企业级日志分析系统:从零搭建集中化日志平台
运维·elk·云原生·云计算·日志分析
你看我名字11 天前
ELK 日志分析平台:Filebeat、Logstash、Elasticsearch 与 Kibana 实战
大数据·elk·elasticsearch
SelectDB技术团队12 天前
云数仓成本结构拆解:五层计费模型与 Apache Doris 托管形态对照
大数据·数据库·elk·全文检索·snowflake
.冰块.13 天前
ELK 日志分析系统实验:部署 Elasticsearch 双节点集群实现 Apache 日志采集与 Kibana 可视化
elk·elasticsearch·apache·日志
AscendKing14 天前
可观测性选型:ELK vs SkyWalking,到底哪个更重?是二选一,还是两者一起部署?
elk·skywalking·apm·可观测
March.s16 天前
构建企业级 ELK 日志分析系统:从核心原理到集群化部署实战
elk
fengkai454516 天前
十四、ELK 企业日志分析系统
运维·elk·日志
Thomas.Sir16 天前
第28课:统一日志收集、ELK搭建 & 线上问题排查体系
elk·spring cloud