Elastic Stack 9.3.0 日志探索

在Discover探索页面中探索日志数据

【适用部署模式】:Elastic Serverless 无服务器部署 | Elastic Stack 自托管部署

通过Discover页面中的logs-*All logs(全量日志)数据视图,你可以快速对日志数据进行检索与筛选,获取日志字段的结构信息,并通过可视化组件展示分析结果。你还可以自定义并保存检索条件,将其添加到仪表盘中。无需登录多台服务器、切换目录、查看零散的日志文件,所有日志数据均可在统一视图中完成查看与分析。

打开Discover页面

在Kibana顶部全局搜索框中搜索Discover,即可进入对应页面;随后在页面左上角的「数据视图」下拉菜单中,选择logs-*All logs数据视图。

注意

如需获得场景化的日志分析体验,请将当前空间的「解决方案视图」设置为「可观测性(Observability)」。

所需Kibana权限

要在Discover的日志数据视图中查看数据,需要具备Discover、索引(Index)、日志应用(Logs)的读取权限。

定位你的日志数据

默认情况下,All logs数据视图会根据「日志源」高级设置中配置的索引模式,展示你所有的日志数据。如需打开高级设置,可在侧边导航栏中找到对应入口,或通过顶部全局搜索框搜索「Advanced settings(高级设置)」。

如需聚焦一个或多个特定来源的日志,可通过对应数据源的索引模式创建专属数据视图。关于创建数据视图的更多信息,参见《创建数据视图》官方文档。

当目标日志数据已在页面中展示后,你可以进一步下钻分析,找到所需的关键信息。

在文档列表表格中查看日志数据

文档列表表格支持添加字段、调整表格列顺序、字段排序、调整行高,所有操作均与Discover通用表格的操作逻辑一致。

操作列

操作列提供了日志相关的拓展操作与状态标识能力,核心功能如下:

  • 展开:「展开日志详情」图标,点击可打开日志详情面板,深入查看单条日志的完整内容。

  • 降级文档标识:「字段忽略」图标,该标识用于提示文档在索引写入时,是否存在被忽略的字段。字段被忽略通常意味着字段格式异常、映射不匹配或文档存在其他问题,你可通过该标识定位问题,排查字段被忽略的根因。

  • 堆栈跟踪标识:「文档包含堆栈跟踪」图标,该标识可帮你快速定位包含堆栈跟踪信息的文档,这类文档通常携带异常报错的详细上下文。

查看日志详情

点击「展开」图标,即可打开日志详情面板,深入查看单条日志的完整内容。

日志详情会为每条日志提供实时的事件反馈与上下文信息,明确事件发生的内容与位置。通过该面板,你可以快速完成错误调试,对报错发生的服务进行根因分析。

在日志详情面板中,可通过以下操作对特定字段进行筛选与聚焦:

  • 筛选匹配值(「筛选匹配值」图标):仅展示包含该字段特定值的日志。

  • 排除匹配值(「排除匹配值」图标):仅展示不包含该字段特定值的日志。

  • 筛选字段存在性(「筛选字段存在」图标):仅展示包含该字段的日志。

  • 切换表格列展示(「切换表格列」图标):在Discover主表格中添加或移除该字段的展示列。

查看日志数据集详情

前往「数据集(Data Sets)」页面,可查看日志数据集的更多详情,监控数据集的整体质量。如需打开数据集质量管理页面,可在侧边导航栏中找到对应入口,或通过顶部全局搜索框搜索进入。


二、结构化内容整理

流程阶段 核心内容 核心价值
基础信息 适配Elastic Stack 9.3.0,支持自托管/Serverless两种部署模式 明确版本与环境兼容性,避免操作不匹配
前置准备 1. Kibana权限配置 2. 可观测性解决方案视图设置(推荐) 3. 日志数据视图准备 扫清操作障碍,获得日志场景专属优化体验
基础入门 1. 打开Discover页面 2. 选择日志专属数据视图 完成日志数据的基础加载,进入分析界面
日志定位 1. 全量日志默认匹配规则 2. 自定义业务数据视图创建 3. 进阶筛选与下钻 精准聚焦目标业务/来源的日志,过滤无效数据
表格操作 1. 表格基础配置(列、排序、行高) 2. 操作列3大核心功能 高效浏览日志列表,快速定位异常文档
深度排查 1. 单条日志详情查看 2. 字段级快捷筛选 3. 异常上下文分析 完成报错调试与根因分析,定位问题根源
质量管控 数据集质量页面查看与监控 提前发现日志采集/写入/映射异常,保障数据可用性

三、分模块深度分析与优化

模块1:部署模式适配

  1. 两种部署模式的能力差异与适配规则

    • 自托管Elastic Stack 9.3.0模式

    本文所有功能100%兼容,需提前完成Elasticsearch+Kibana 9.3.0集群部署,且通过Filebeat/Winlogbeat/OTel Collector等工具将日志写入ES,索引名称需匹配Elastic Common Schema(ECS)logs-*命名规范。

    优化建议:9.3.0对ECS 8.11+版本做了深度优化,非ECS规范的字段无法触发堆栈跟踪、降级文档自动标识等能力,需严格遵循ECS规范定义日志字段。

    • Elastic Serverless 无服务器模式

    9.3.0 Serverless版本对Discover日志探索做了原生轻量化优化,无需手动管理索引和数据视图,默认开启All logs全量日志视图,自动汇聚所有采集的日志数据;同时默认启用可观测性解决方案视图,无需手动配置空间。

    优化建议:Serverless模式优先使用All logs视图,避免创建过多自定义数据视图,减少无服务器计算资源消耗。

  2. 9.3.0版本专属特性

该版本统一了两种部署模式的Discover日志操作逻辑,解决了旧版本Serverless与自托管模式操作路径不一致的问题,本文所有步骤在两种模式下完全通用。


模块2:可观测性解决方案视图配置

  1. 配置的核心价值

解决方案视图是Kibana针对特定场景的专属界面预设,将空间设置为「可观测性」后,Discover会针对日志场景做专属优化:

  • 表格默认展示日志核心字段:@timestampmessagehost.nameservice.namelog.level,无需手动添加列

  • 自动加载日志专属过滤模板,一键筛选ERROR/WARN级别日志、异常堆栈日志、降级文档

  • 侧边栏优先展示日志相关字段,隐藏通用元数据字段,提升排查效率

  • 9.3.0新增:默认开启「日志上下文查看」功能,无需手动开启

  1. 9.3.0详细操作步骤

    1. 用具备空间管理权限的账号登录Kibana

    2. 点击左下角「空间」图标,选择「管理空间」

    3. 选择目标空间,点击「编辑」

    4. 在「解决方案视图」下拉菜单中,选择「可观测性(Observability)」

    5. 点击「保存空间」,刷新Kibana页面后生效

  2. 注意事项

解决方案视图为空间级配置,仅对当前空间生效,切换空间需重新配置。


模块3:Kibana权限配置

9.3.0版本深度展开
  1. 权限明细拆解(这里明确拆分最小权限集)
权限类别 具体权限项 核心作用 配置位置
Kibana空间功能权限 Discover > 读取(read) 允许访问Discover页面,执行检索、筛选、表格配置操作 角色管理 > Kibana > 空间权限 > 目标空间 > Discover
Kibana空间功能权限 日志(Logs) > 读取(read) 允许访问日志应用能力,包括数据集质量、日志源配置、堆栈跟踪解析 角色管理 > Kibana > 空间权限 > 目标空间 > 日志
Elasticsearch索引权限 目标日志索引(如logs-*) > 读取(read) 允许读取索引中的日志文档数据 角色管理 > 索引权限 > 索引模式填写logs-* > 权限勾选read
Elasticsearch索引权限 目标日志索引(如logs-*) > 查看索引元数据(view_index_metadata) 允许读取索引的映射、字段信息,是数据视图正常工作的必备权限 角色管理 > 索引权限 > 索引模式填写logs-* > 权限勾选view_index_metadata
  1. 9.3.0详细配置步骤

    1. 用超级管理员账号登录Kibana,进入「管理」>「安全」>「角色」,点击「创建角色」

    2. 配置索引权限:索引模式填写logs-*(或业务日志索引模式),权限勾选readview_index_metadata

    3. 配置Kibana空间权限:选择目标空间,添加功能权限,分别给Discover、日志模块勾选「读取」权限

    4. 保存角色,将角色分配给对应用户,完成配置

  2. 优化建议(最小权限原则)

    • 禁止给普通用户分配超级管理员权限,仅分配上述最小必要权限

    • 按业务线拆分索引权限,仅给用户开放对应业务的日志索引,实现数据隔离

    • 9.3.0新增:可通过字段级安全权限,限制用户查看日志中的敏感信息字段


模块4:数据视图与日志源配置

  1. All logs 数据视图的底层逻辑(原文未提及的核心差异)

All logs是可观测性模块内置的动态数据视图,而非固定索引模式的数据视图:

  • 不固定绑定索引,实时读取「高级设置-日志源」的配置,自动匹配所有符合条件的索引

  • 9.3.0默认索引模式:logs-*,filebeat-*,winlogbeat-*,otel-logs-*,新增对OpenTelemetry日志的原生支持

  • 核心优势:新增日志索引只要名称匹配规则,无需修改数据视图,自动纳入检索范围

  1. 日志源高级设置详细配置步骤

    1. 进入Kibana「管理」>「Kibana」>「高级设置」

    2. 左侧分类选择「可观测性」,找到「日志源」配置组

    3. 核心配置项「默认索引模式」:填写日志索引匹配规则,多个规则用英文逗号分隔

    4. 可选配置:可自定义日志时间戳字段(默认@timestamp)、日志内容字段(默认message),适配非ECS规范日志

    5. 保存更改,刷新Discover页面生效

  2. 自定义数据视图创建优化(9.3.0日志场景最佳实践)

    1. Discover页面点击左上角数据视图下拉菜单,选择「创建数据视图」

    2. 名称填写业务标识(如「支付服务日志」),索引模式填写业务日志索引(如logs-service-pay-*

    3. 时间戳字段选择@timestamp(必备,否则无法按时间筛选日志)

    4. 【9.3.0专属优化】勾选「允许隐藏和系统字段」,可展示_ignored_index等元数据字段,方便异常排查

    5. 【优化建议】勾选「保存到空间」,仅当前空间可见,避免跨空间数据混乱

    6. 保存数据视图,完成创建

  3. 性能优化建议

日常排查优先使用业务自定义数据视图,而非All logs全量视图。All logs会扫描所有匹配的索引,数据量过大时检索变慢;9.3.0对窄范围索引模式做了专项优化,自定义数据视图的检索速度远高于全量视图。


模块5:文档列表表格操作

9.3.0版本深度展开
  1. 日志场景专属操作详解
操作 详细步骤 日志场景核心价值
添加/移除字段列 左侧字段列表中,鼠标悬浮目标字段,点击「+」添加列、「-」移除列 快速添加日志级别、服务名等核心排查字段,隐藏无关字段,提升表格可读性
调整列顺序 鼠标按住目标列表头,左右拖动到目标位置松开 将时间戳、日志内容、日志级别等高频字段放在最左侧,无需横向滚动即可查看核心信息
字段排序 点击字段表头,切换升序/降序/取消排序,支持多字段组合排序 按时间戳降序查看最新日志;按日志级别排序,优先查看ERROR级报错
调整行高 点击表格右上角「设置」图标,选择行高模式(单行/紧凑/自动换行) 自动换行模式可完整展示长日志内容,无需进入详情页即可查看完整信息
  1. 9.3.0版本新增日志专属特性

    • 列冻结:支持冻结时间戳等核心列,横向滚动时始终保持可见,适合多字段长日志查看

    • 字段值高亮:支持对特定字段值高亮(如ERROR),快速定位报错日志

    • 批量导出:支持选中多条日志,一键导出为JSON/CSV格式,方便离线分析

    • 表格预设:可保存当前列配置、排序规则为预设,下次进入一键加载,无需重复配置


模块6:操作列核心功能

6.1 展开日志详情功能
  • 底层逻辑:点击后加载该条文档的完整JSON内容,包括所有业务字段、元数据字段,以及ES文档元信息(_index_id_version等)

  • 9.3.0优化:点击展开后默认进入「摘要」标签页,自动聚合日志核心信息(时间、服务、主机、日志级别、异常信息),而非旧版本的原始JSON,大幅提升排查效率

  • 优化建议:日常排查优先使用摘要页,快速获取核心信息,无需查看完整JSON

6.2 降级文档标识(日志异常排查核心能力)
  1. 标识触发底层逻辑

文档写入ES时,若出现字段写入异常,ES不会拒绝整个文档,而是将异常字段加入_ignored元字段,标记为「降级文档」;Discover自动识别_ignored字段,触发该标识。

  1. 9.3.0中字段被忽略的常见根因与修复方案
异常原因 详细说明 排查与修复方法
字段映射类型不匹配 字段映射类型与写入值类型不一致(如integer字段写入字符串) 1. 展开文档查看_ignored字段,定位异常字段;2. 核对索引模板的字段映射类型;3. 修正采集端字段类型或调整索引映射
字符串长度超过ignore_above限制 keyword字段设置了ignore_above参数,写入字符串长度超过阈值(默认256) 1. 调整索引模板中该字段的ignore_above阈值;2. 无需聚合的字段改为text类型
动态字段映射关闭 索引动态映射设置为false/strict,新增字段无法自动创建映射,导致被忽略 1. 调整索引模板的动态映射规则;2. 提前在模板中定义新增字段的映射
字段格式异常 date类型字段的写入值,不符合映射中定义的format格式 1. 修正采集端的时间格式;2. 调整date字段的format格式
  1. 9.3.0优化能力

点击降级文档标识,可直接跳转到「数据集质量」页面,查看该索引的全量降级文档统计、异常字段分布,一键生成映射修复建议,无需手动排查。

6.3 堆栈跟踪标识
  1. 标识触发底层逻辑

9.3.0自动识别文档中符合ECS规范的exception.stack_trace字段、OTel规范的exception.stacktrace字段,只要文档包含该字段,就会触发该标识。

  1. 核心价值

无需手动检索,即可快速定位包含异常堆栈的报错日志,这类日志是应用报错的核心排查依据,包含异常类型、报错位置、调用栈信息。

  1. 9.3.0优化能力

点击堆栈跟踪标识,可直接打开堆栈详情面板,自动格式化堆栈内容,高亮报错类名、方法名、行号;若接入了Elastic APM,支持一键跳转到对应服务的链路详情,实现日志-链路全链路排查。


模块7:日志详情面板操作

  1. 4个核心操作的底层逻辑与使用场景
操作名称 底层KQL语法 典型使用场景
筛选匹配值 field_name: "field_value" 点击log.level字段的ERROR值,筛选所有ERROR级别日志,聚焦报错信息
排除匹配值 NOT field_name: "field_value" 排除log.level: "INFO"的日志,过滤无用正常日志,仅保留告警与报错
筛选字段存在性 _exists_: field_name 筛选_exists_: exception.stack_trace的日志,快速定位所有带异常堆栈的报错
切换表格列展示 无KQL,仅修改表格配置 快速将排查发现的关键字段添加到主表格,无需在左侧字段列表查找
  1. 9.3.0新增核心能力

    • 日志上下文查看:点击详情面板右上角「查看上下文」,可查看该条日志前后的同索引日志,还原事件发生的完整时序,是报错排查的核心功能

    • 字段分类展示:自动将字段分为「核心字段」「异常字段」「服务元数据」「主机元数据」「自定义字段」5大类,无需在海量字段中查找关键信息

    • 一键添加到仪表盘:针对字段值可一键创建可视化图表,添加到现有仪表盘,无需手动创建可视化

    • 异常信息自动聚合:自动提取堆栈跟踪中的异常类型、报错信息、根因异常,无需在长堆栈中手动查找


模块8:数据集质量监控

9.3.0版本深度展开
  1. 核心定位

这是9.3.0版本大幅优化的日志数据质量管控能力,核心是提前发现日志采集、写入、映射环节的异常,避免因数据质量问题导致故障排查失效。

  1. 9.3.0核心功能

    • 数据集概览:展示全量日志数据集的数量、文档总数、降级文档率、平均数据延迟,快速发现异常

    • 单数据集详情:展示单个索引的字段完整性、映射分布、降级文档异常统计、写入吞吐量、数据延迟

    • 质量评分:9.3.0新增,自动为每个数据集生成0-100分的质量评分,评分维度包括映射合规性、降级文档率、字段完整性、数据延迟

    • 自动修复建议:针对异常数据集,自动生成映射调整、采集配置优化等修复建议

    • 一键跳转排查:针对异常数据,一键跳转到Discover页面筛选对应日志,完成根因排查

  2. 优化建议

日常运维优先关注质量评分低于80分的数据集,提前修复数据质量问题,保障故障发生时日志数据可用。


四、ES 9.3.0 Discover日志探索最佳实践总结

  1. 部署适配 :自托管模式严格遵循ECS规范定义日志字段,Serverless模式优先使用内置All logs视图,减少资源消耗

  2. 空间配置:提前将空间设置为可观测性解决方案视图,获得日志专属场景化优化能力

  3. 权限管控:遵循最小权限原则,仅分配必要的功能与索引权限,通过字段级安全管控敏感信息

  4. 性能优化:日常排查优先使用业务专属自定义数据视图,避免全量视图的大范围索引扫描,提升检索效率

  5. 异常排查:通过降级文档、堆栈跟踪标识快速定位异常日志,结合日志上下文功能还原事件时序,高效完成根因分析

  6. 质量管控:定期查看数据集质量页面,提前修复日志数据质量问题,保障日志数据的可用性

相关推荐
invicinble2 小时前
centos7系统安装jdk
java·开发语言
lifallen2 小时前
笛卡尔树 (Cartesian Tree)
java·数据结构·算法
不想看见4042 小时前
N-Queens -- 回溯法 -- 力扣101算法题解笔记
java·数据结构·算法
MX_93592 小时前
Spring组件扫描原理解析
java·后端·spring
让我上个超影吧2 小时前
天机学堂——领取优惠券优化
java
输出输入2 小时前
Java Swing和JavaFX用哪个好
java·前端
星火开发设计2 小时前
C++ 异常处理:try-catch-throw 的基本用法
java·开发语言·jvm·c++·学习·知识·对象
铁甲前沿2 小时前
一个月玩转MQTT(篇五:开发自己的MQTT WEB页面)
前端·mqtt·asp.net·mqtt web开发
没有bug.的程序员2 小时前
分布式配置深潜:Spring Cloud Config 与 Git 集成内核、版本回滚机制与多环境治理实战指南
java·分布式·git·spring cloud·分布式配置·版本回滚