数据流
编辑数据流
编辑数据流命名方案
编辑APM 数据遵循 <类型>-<数据集>-<命名空间>
命名方案。类型
和 数据集
由 Elasticsearch apm-data 插件预定义,但 命名空间
为您提供了自定义如何在 Elasticsearch 中存储不同类型数据的机会。对于将什么用作您的命名空间没有建议——它的目的是具有灵活性。例如,您可以为每个环境创建命名空间,如 dev
、prod
、production
等。或者,您可以创建与组织内战略业务部门对应的命名空间。
APM 数据流
编辑按类型划分,APM 数据流如下
- 追踪
-
追踪由span 和事务组成。追踪存储在以下数据流中
- 应用程序追踪:
traces-apm-<命名空间>
- RUM 和 iOS 代理应用程序追踪:
traces-apm.rum-<命名空间>
- 应用程序追踪:
- 指标
-
指标包括基于应用程序的指标、聚合指标和基本系统指标。指标存储在以下数据流中
- APM 内部指标:
metrics-apm.internal-<命名空间>
- APM 事务指标:
metrics-apm.transaction.<metricset.interval>-<命名空间>
- APM 服务目标指标:
metrics-apm.service_destination.<metricset.interval>-<命名空间>
- APM 服务事务指标:
metrics-apm.service_transaction.<metricset.interval>-<命名空间>
- APM 服务摘要指标:
metrics-apm.service_summary.<metricset.interval>-<命名空间>
-
应用程序指标:
metrics-apm.app.<service.name>-<命名空间>
应用程序指标在数据流名称中包括已检测服务的名称,该名称在每个 APM 代理的配置中定义。因此,服务名称必须遵循某些索引命名规则。
服务名称规则
- 服务名称不区分大小写,并且必须是唯一的。例如,您不能拥有一个名为
Foo
的服务和另一个名为foo
的服务。 -
特殊字符将从服务名称中删除,并替换为下划线 (
_
)。特殊字符包括'\\', '/', '*', '?', '"', '<', '>', '|', ' ', ',', '#', ':', '-'
拥有适当许可证的用户可以使用合成
_source
提供的额外存储效率。 - 服务名称不区分大小写,并且必须是唯一的。例如,您不能拥有一个名为
- APM 内部指标:
- 日志
-
日志包括应用程序错误事件和应用程序日志。日志存储在以下数据流中
- APM 错误/异常日志:
logs-apm.error-<命名空间>
- 应用程序 UI 日志:
logs-apm.app.<service.name>-<命名空间>
- APM 错误/异常日志:
APM 数据流重定向
编辑APM 支持将 APM 数据重定向到用户定义的 APM 数据流名称,而不是默认名称。这可以通过在摄取管道中使用重定向
处理器来设置数据流数据集或命名空间来实现。分离 APM 数据流的好处是可以使用自定义保留和安全策略。
例如,考虑最初索引到 traces-apm-default
的追踪。要从追踪的 service.environment
设置数据流命名空间,并回退到静态字符串 "default"
,请创建一个名为 traces-apm@custom
的摄取管道,该管道将自动使用
[ { "reroute": { "namespace": [ "{{service.environment}}", "default" ] } } ]
要查找默认情况下由 Elasticsearch apm-data 插件调用的其他摄取管道,请转到 堆栈管理 → 摄取管道 在 Kibana 中并搜索 apm
。默认的 APM 摄取管道将遵循模式 *-apm*@default-pipeline
。
有关更多自定义 APM 摄取管道指南,请参阅使用摄取管道解析数据。