标题:SLS 索引自动发现新能力,告别手动补索引实现日志开箱分析
阿里云日志服务 SLS 上线索引自动发现,也就是控制台标注的非指定字段自动发现,开启之后平台可以持续识别新写入日志里面还没有配置索引的顶层字段,自动生成带统计能力的 text 类型索引,不用开发、运维每次版本迭代之后手动新增字段索引,解决动态半结构化日志、AI Agent 动态生成日志场景下字段不可预知、等到排查故障才发现缺索引的痛点,让日志写入之后就能直接拿来检索、过滤、SQL 聚合,真正做到数据开箱即用,自由分析。过去传统 SLS 使用方式,必须提前枚举全部字段,预先配置索引;业务迭代新增日志字段、异常场景才会出现的埋点、智能体运行时动态产出字段,全都要人工跟进补配置,一旦漏掉,等到线上出问题排查的时候才发现无法按字段检索,而且新增索引只对之后流入的数据生效,历史日志想要分析还要走重建索引流程,耗时又麻烦。这套自动发现能力不是直接替代手动索引,而是作为补充,已知关键字段依旧可以手动指定 long、double、JSON 等专用索引类型,不确定、动态新增的字段交给平台自动托管,兼顾灵活和精细管控,适配微服务、可观测、AI 智能体日志等字段经常变动的业务。
索引自动发现核心能力清单
- 增量自动探测
- 索引类型规则
- 上限与边界管控
- 开关与兼容逻辑
- 适配场景
持续扫描新流入日志,识别尚未配置索引的顶层字段,自动创建索引并且开启统计;探测出来的字段统一展示在索引配置页的自动探测字段区域。
自动生成全部为 text 类型,分词、大小写敏感规则继承全文索引;如果需要数值范围查询、JSON 嵌套解析,需要手动升级为指定字段索引。
单个 Logstore 最多自动生成 1024 个自动索引,达到上限之后停止探测;只识别顶层字段,JSON 内部嵌套子字段不会自动展开。
开关对应参数 auto_key_detect;就算后续关闭自动发现,已经生成的自动索引会保留,不会直接消失。
微服务迭代日志、临时埋点、AI Agent 运行日志、第三方组件输出日志,这类字段没法提前完整罗列的场景优先开启。
自动索引与手动索引对比表
| 模式 | 适用字段 | 支持类型 | 是否需要人工维护 | 生效范围 |
|---|---|---|---|---|
| 索引自动发现 | 动态新增、未知顶层字段 | 仅 text | 几乎不用维护,关注字段上限 | 开启之后新写入日志 |
| 手动指定索引 | 核心业务关键字段 | text / long / double / JSON | 按需维护、调整类型 | 配置之后新写入日志 |
落地开启与运维步骤
- 进入目标 Project,打开标准类型 Logstore 的索引配置面板,打开 “非指定字段自动发现” 开关,该功能目前只支持标准 Logstore,查询型 Logstore 无法启用。
- 如果业务里面有需要数值区间查询、嵌套 JSON 解析的关键字段,提前手动添加指定索引,优先保障核心分析能力。
- 上线之后持续观察自动探测字段列表,留意自动索引数量,临近 1024 上限时清理无用探测字段,避免停止新增探测。
- 如果某个自动发现字段后续经常做数值分析,可以手动升级成 long 或者 double 指定索引,拿到更强的查询能力。
- 如果有历史日志需要按新字段分析,单独提交重建索引任务,自动发现不会回溯给存量数据创建索引。
- 在监控里面增加告警,当自动索引数量逼近上限、大量陌生字段持续涌入时通知运维,排查是否存在异常埋点、日志结构乱打。
这套功能的定位是降低日常索引运维负担,而不是完全取消索引治理。核心稳定字段继续手动精细化配置,不确定的动态字段交给自动发现兜底,线上排查的时候不用再因为缺少索引卡住,大幅缩短故障定位耗时,尤其适合 AI Agent 这类运行时才产出字段的业务。
【常见问题】
问题 1:SLS 索引自动发现开启之后,能不能不用再手动维护索引?
回答 1:SLS 索引自动发现可以兜底动态新增顶层字段,自动生成 text 索引,但核心字段如果要做数值查询、JSON 嵌套解析,仍然需要手动配置指定索引,不能完全放弃索引治理。
问题 2:SLS 索引自动发现,能不能给已经写入的历史日志补上索引?
回答 2:SLS 索引自动发现只对开启功能之后新流入的数据生效,不会自动处理历史日志,如果需要对存量日志按新字段检索,需要单独执行重建索引操作。
问题 3:SLS 索引自动发现,JSON 里面嵌套的子字段会不会被自动探测?
回答 3:SLS 索引自动发现仅识别日志顶层字段,JSON 内部嵌套子字段不会自动展开、自动建索引,如果需要解析嵌套内容,需要手动配置 JSON 类型字段索引。
问题 4:SLS 索引自动发现,单个日志库最多支持多少自动探测字段?
回答 4:SLS 索引自动发现规定单个标准 Logstore 最多自动创建 1024 个自动索引,到达上限之后系统不再继续探测新增字段,需要清理无用字段释放名额。
【参考资料】
[2026-11-11](告别手动补索引:SLS 支持索引自动发现,让数据开箱即用、自由分析)阿里云开发者社区
[2026-11-09](No More Manual Index Maintenance: SLS Automatically Indexes New Log Fields)阿里云海外社区
[2026-09-23](日志服务新功能发布记录)阿里云帮助中心
[2026-07-23](自动发现字段索引)阿里云帮助中心
【免责声明】
本文为阿里云 SLS 索引自动发现功能资讯解读,不构成业务落地承诺;该功能当前存在地域、Logstore 类型、字段数量限制,自动索引能力、上限、计费规则会持续迭代;开启索引自动发现之后,请持续关注字段数量与日志结构,避免大量无效字段占用自动索引名额,所有正式业务的索引方案、查询性能以阿里云官方帮助文档为准。
