跳转至

日志索引


系统根据设定的筛选条件自动将日志数据归档到相应的索引中。通过创建多个日志索引,您可以:

  • 按业务线、环境或项目隔离日志数据
  • 为不同索引配置差异化的存储策略
  • 优化查询性能,减少无关数据的扫描
注意

❗️ 默认情况下,日志索引无法新建,请联系客户经理申请开通此功能

开始新建

  1. 进入新建索引 > 日志索引页面;
  2. 自定义索引名称;
  3. 按需添加描述;
  4. 添加匹配条件
  5. 配置数据存储策略:选择日志保留时长,到期后自动清理;

    • 部署版用户可自定义存储时长,范围:1d ~ 1,800d
    • 按需配置克隆索引;

    • 克隆配置包含名称、保存时间、克隆条件。

  6. 按需配置高级选项

  7. 确定。

匹配条件

匹配条件用于定义日志进入当前索引的筛选规则。当前支持两种配置模式:普通匹配进阶匹配

普通匹配

普通匹配沿用原有配置方式,适用于筛选逻辑较简单的场景。

  1. 选择条件关系:

    • 满足所有条件:日志需同时满足全部筛选条件,才会进入当前索引;
    • 满足任一条件:日志满足任意一条筛选条件,即可进入当前索引。
  2. 添加筛选条件:

    • 字段名称:选择日志字段,如 sourceservicehost 等;
    • 运算符:选择匹配方式;
    • 匹配值:输入字段值,多个值用英文逗号分隔。

普通匹配适合按固定字段快速配置索引分流。

进阶匹配

进阶匹配适用于需要更灵活组合匹配规则的场景。启用进阶匹配后,日志数据将进入 Pipeline 进行匹配判断,并会产生相应费用。

在进阶匹配中,您可以配置多条筛选条件,每条条件包含:

  • 字段名称:输入需要判断的日志字段;
  • 匹配方式:支持 =!=innot inmatchnot matchwildcardnot wildcard
  • 匹配值:输入字段对应的匹配值。

点击添加筛选可继续增加条件;点击清空全部条件可移除当前已配置的所有条件。

页面下方会展示表达式预览,用于确认当前筛选条件最终生成的匹配表达式。若条件不完整或表达式无效,页面会提示“请完善或修正筛选条件”,此时需补充字段名称、匹配方式或匹配值后再保存。

注意

日志将按索引列表顺序匹配,并在普通索引匹配阶段仅写入首个命中的普通索引。若该普通索引配置了克隆规则,且日志满足克隆条件,系统会额外异步复制一份到对应克隆索引。

高级选项

高级选项默认展开,您可以在此选择全文索引字段。

全文索引字段

  1. message 索引字段(默认):全文搜索只匹配原始 message 字段,系统为 message 建立全文索引;

  2. 全行索引:全文搜索匹配日志中的所有业务字段,不包含系统字段。系统统一将业务字段写入 variant,并仅为 variant 建立全文索引。

当日志中存在 message 时,系统不会删除该字段,而是将其作为普通业务字段写入 variant。系统不会同时为 messagevariant 建立两份全文索引,以避免重复索引带来的额外存储成本。

全行索引的数据处理方式
不存在 message:
业务字段 → variant → 全文索引

存在 message:
message + 其他业务字段 → variant → 全文索引

是否存在 message 取决于客户端或 Pipeline 的实际处理结果。同一个日志索引中可以同时包含带 message 和不带 message 的日志。

如需配置 DataKit JSON 字段提取,或在 Pipeline 提取字段后删除原始 message,参见全行索引

原“匹配服务”能力已迁移至日志索引映射

克隆索引

克隆索引用于从普通日志索引中进一步筛选并复制部分日志数据。对于查询频率较高、数据范围较明确的日志,可以将其复制到专用克隆索引中,减少查询时需要扫描的数据量,提升日志检索效率。

日志会先按照普通索引的排列顺序完成匹配,并写入首个命中的普通索引。写入完成后,系统再根据该索引配置的克隆条件,异步判断是否需要将日志复制到克隆索引。

日志上报
按顺序匹配普通索引
写入首个命中的普通索引
判断是否配置克隆规则
满足克隆条件 ──→ 异步复制到克隆索引
不满足条件   ──→ 不执行克隆

克隆任务异步执行。即使克隆失败,也不会影响日志写入来源索引。

使用场景

克隆索引适用于以下场景:

  • 高频查询只关注普通索引中的部分日志;
  • 需要按照服务、环境、状态、业务类型等条件缩小查询范围;
  • 普通索引数据量较大,希望降低常用查询的扫描量;
  • 希望为高频查询数据配置更短的保存时间;
  • 希望保留来源索引中的完整日志,同时建立一个更适合日常排查的精简数据集。

例如,普通索引 application 中保存了所有应用日志,而日常排查主要关注生产环境中的错误日志。此时可以为 application 配置克隆索引 application_error,并设置以下克隆条件:

env = production AND status = error

满足条件的新日志会同时保存在:

  • 来源索引:application
  • 克隆索引:application_error

查询生产环境错误日志时,可以直接选择 application_error,减少对 application 全量数据的扫描。

配置克隆索引

新建或编辑普通日志索引时,可以按需配置克隆索引:

  1. 进入日志 > 索引
  2. 新建日志索引,或编辑已有的普通日志索引;
  3. 找到克隆索引配置;
  4. 开启克隆索引;
  5. 填写克隆索引名称;
  6. 设置克隆索引的数据保存时间;
  7. 添加克隆条件;
  8. 保存索引配置。

每个普通索引最多只能配置一个克隆索引。

克隆索引名称

克隆索引名称用于在索引列表和日志查看器中识别该索引。

配置名称时请注意:

  • 克隆索引名称在当前工作空间内必须唯一;
  • 克隆索引不能与已有普通索引、原生直写索引、外部索引或其他克隆索引重名;
  • 创建后,克隆索引会作为来源索引的二级行展示;
  • 克隆索引不能作为其他克隆索引的来源。

保存时间

克隆索引可以设置独立的数据保存时间,但不得超过来源索引的保存时间。

来源索引保存时间 克隆索引可设置的保存时间
7 天 不超过 7 天
14 天 不超过 14 天
30 天 不超过 30 天

如果修改来源索引的保存时间,需要确保克隆索引的保存时间仍符合限制。

克隆索引中的日志达到保存期限后会自动清理,不影响来源索引中的原始日志。

克隆条件

克隆条件用于判断来源索引中的日志是否需要复制到克隆索引。

可以根据日志字段设置筛选规则,例如:

  • source
  • service
  • env
  • status
  • host
  • 其他日志字段

只有同时满足以下条件的日志才会进入克隆索引:

  1. 日志已经成功写入来源普通索引;
  2. 日志满足当前配置的克隆条件;
  3. 克隆规则在该日志写入前已经生效。

不满足克隆条件的日志仍会正常保存在来源索引中,但不会复制到克隆索引。

数据内容

克隆索引会完整保留来源日志的字段和标签,不会只保留克隆条件中使用的字段。

复制后的日志内容包括:

  • 原日志的业务字段;
  • 原日志的标签;
  • 原日志中存在的 message
  • 查询和展示日志所需的相关信息。

克隆操作不会修改或删除来源索引中的日志。

生效范围

克隆规则仅处理规则生效后新写入来源索引的日志。

以下操作完成后,系统均从操作生效时间开始处理后续日志:

  • 新建克隆规则;
  • 启用克隆规则;
  • 修改克隆条件;
  • 修改克隆索引相关配置。

系统不会自动扫描来源索引并回填历史数据。因此,规则生效前已经写入来源索引的日志不会自动复制到克隆索引。

例如,在 2026-08-19 10:00:00 启用克隆规则:

  • 10:00:00 之后新写入且满足条件的日志可以进入克隆索引;
  • 10:00:00 之前已经存在的历史日志不会自动回填。

查看和查询克隆索引

克隆索引以来源索引的子节点展示。来源索引为父节点,克隆索引为子节点;存在克隆索引时,索引树默认展开。

克隆索引会显示专属图标或标识,用于和普通索引区分。

搜索索引时:

  • 搜索来源索引名称,会同时显示该来源索引及其克隆索引;
  • 搜索克隆索引名称,会保留对应来源索引作为上级节点,便于确认索引关系。

查询时需要注意:

  • 来源索引和克隆索引不能同时选中;
  • 选择来源索引时,不会自动查询其克隆索引;
  • 选择克隆索引时,仅查询该克隆索引中的数据;
  • 通配符 * 包含默认索引及全部普通索引,但不包含克隆索引;
  • 查询克隆索引时,需要明确选择对应的克隆索引。

克隆索引支持在以下查询入口中选择:

  • 日志查看器;
  • 指标分析;
  • 场景图表和仪表板中的日志 DQL 编辑器;
  • 仪表板日志视图变量;
  • 日志监控器查询。

克隆索引不会作为独立索引出现在以下配置入口中:

  • 索引配置;
  • Pipeline;
  • 字段映射;
  • 数据路由;
  • 数据访问规则;
  • 日志排序;
  • 数据来源索引选择器。

编辑与启停

编辑普通索引时,可以修改对应的克隆规则。

修改或重新启用克隆规则后:

  • 新规则只作用于生效时间之后新写入的日志;
  • 已经写入克隆索引的历史日志不会按照新规则重新处理;
  • 已经写入来源索引的历史日志不会自动回填;
  • 修改规则不会改变来源索引原有的日志数据。

禁用克隆规则后,后续日志不再复制到克隆索引。克隆索引中仍处于保存期限内的历史日志可以继续查询。

限制说明

限制项 说明
来源索引 仅普通日志索引可以配置克隆索引
克隆数量 每个普通索引最多配置一个克隆索引
克隆层级 克隆索引不能继续配置克隆索引
保存时间 克隆索引保存时间不得超过来源索引
数据范围 仅处理克隆规则生效后新写入的日志
历史数据 不自动回填来源索引中的历史日志
数据内容 完整保留原日志的字段和标签
异常处理 克隆失败不会影响来源索引写入
列表排序 克隆索引不参与普通索引排序和分页
查看器查询 “全部日志”不自动包含克隆索引,需要明确选择
注意
  • 克隆索引用于缩小高频查询的数据范围,不会取代来源普通索引;
  • 同一条日志可以同时存在于来源索引和克隆索引中;
  • 修改克隆条件不会重新处理已经写入的历史日志;
  • 查询克隆数据时,请在日志查看器中明确选择对应的克隆索引。

索引限制

限制项 说明
总数上限 6 个(含 default 默认索引),即自定义索引最多创建 5 个
匹配机制 顺序匹配,首个匹配的索引生效,后续索引不再匹配
存储时长 部署版支持 1d ~ 1,800d,SaaS 版以页面可选范围为准
克隆索引 单个普通索引最多 1 个克隆索引;克隆层级最多 1 层;克隆保存时间不超过来源索引;更改匹配条件不回填历史数据

更多阅读

文档评价

文档内容是否对您有帮助?