日志数据流
日志数据流能更高效地存储日志数据。在基准测试中,logsdb 索引模式将日志数据的存储空间占用降低了高达 60%,同时对索引性能产生的影响较小(10-20%)。具体结果取决于您的数据集和 Elasticsearch 版本。
当相关模板中的 index.mode 设置为 logsdb 时(无论是自动还是手动设置),就会创建日志数据流。
logsdb 索引模式在 Elastic Cloud Serverless 的日志中,以及 Elastic Stack 9.0 及更高版本的新日志数据流中是默认启用的。
以下数据流会自动启用 logsdb 索引模式
- Elastic Cloud Serverless: 对于名称匹配
logs-*-*模式的新建和现有数据流,会自动设置 logsdb 模式。 - Elastic Stack: 自动 logsdb 模式取决于您的版本和配置
- 从 Elasticsearch 9.0 版本开始,对于名称匹配
logs-*-*模式的新数据流,会自动设置 logsdb 模式。 - 在从 8.x 升级到 9.x 的集群中
- 如果在升级时实例中没有现有的
logs-*-*数据流,那么新的logs-*-*数据流将被设置为 logsdb 模式。 - 现有的数据流(包括 8.x 实例中用于集成或 APM 的数据流)不会自动设置为 logsdb 模式。
- 如果在升级时实例中没有现有的
- 从 Elasticsearch 9.0 版本开始,对于名称匹配
您可以根据需要编辑相关的索引模板,在现有数据流上启用 logsdb。对于集成,请使用 @custom 组件模板。
在大多数情况下,您不需要手动启用 logsdb 模式。如果您确实需要启用它,可以创建一个新模板或更新现有模板。
在相关的索引模板或@custom 组件模板中,将 index.mode 设置为 logsdb
- 新数据流: 创建一个新模板,并将索引模式指定为
logsdb。匹配该模板索引模式的新数据流会自动使用 logsdb 模式。 - 现有数据流: 更新数据流引用的模板。logsdb 模式将在下一次滚动(rollover)时生效。对于集成,请参考为集成启用 logsdb。
若要在 Kibana 中创建或编辑索引模板
使用导航菜单或全局搜索栏进入索引管理 (Index Management)。
在索引模板 (Index Templates) 选项卡上,点击创建模板 (Create template) 以创建新模板,或点击现有模板的名称进行编辑。
提示如果您有标记为受管 (Managed) 的现有模板,请参考为集成启用 logsdb 或默认日志索引模板。
完成向导中的步骤。在 Logistics 步骤中
-
点击 Set index mode(设置索引模式)切换开关以显示 Index mode(索引模式)字段。 - 选择 LogsDB 作为 Index mode(索引模式)。
-
若要创建或更新索引模板
- 在 Elastic Stack 部署中,使用创建索引模板 (create index template) API。
- 在 Elastic Cloud Serverless 中,使用创建索引模板 (create index template) API。
首先获取当前的配置(如果有),以便保留现有设置。PUT 请求会覆盖任何现有的模板。
GET _index_template/my-index-template
在模板请求中将 index.mode 设置为 logsdb
PUT _index_template/my-index-template
{
"index_patterns": ["my-data-*"],
"data_stream": { },
"template": {
"settings": {
"index.mode": "logsdb"
}
},
"priority": 200
}
若要为集成数据流启用 logsdb 模式,请为每个日志数据集创建或更新一个 @custom 组件模板。有关详细信息,请参考为集成启用 logsdb。