数据流
编辑数据流
编辑数据流命名方案
编辑APM 数据遵循 <type>-<dataset>-<namespace>
命名方案。 type
和 dataset
由 Elasticsearch apm-data 插件预定义,但 namespace
是您自定义如何在 Elasticsearch 中存储不同类型数据的机会。对于使用什么作为您的命名空间没有推荐 - 它有意地是灵活的。例如,您可以为每个环境创建命名空间,例如 dev
、prod
、production
等。或者,您可以创建与组织内战略业务单元相对应的命名空间。
APM 数据流
编辑按类型,APM 数据流包括
- 跟踪
-
跟踪由 跨度和事务 组成。跟踪存储在以下数据流中
- 应用跟踪:
traces-apm-<namespace>
- RUM 和 iOS Agent 应用跟踪:
traces-apm.rum-<namespace>
- 应用跟踪:
- 指标
-
指标包括基于应用的指标、聚合指标和基本系统指标。指标存储在以下数据流中
- APM 内部指标:
metrics-apm.internal-<namespace>
- APM 事务指标:
metrics-apm.transaction.<metricset.interval>-<namespace>
- APM 服务目标指标:
metrics-apm.service_destination.<metricset.interval>-<namespace>
- APM 服务事务指标:
metrics-apm.service_transaction.<metricset.interval>-<namespace>
- APM 服务摘要指标:
metrics-apm.service_summary.<metricset.interval>-<namespace>
-
应用指标:
metrics-apm.app.<service.name>-<namespace>
应用指标在数据流名称中包含已检测服务的名称 - 在每个 APM Agent 的配置中定义。因此,服务名称必须遵循某些索引命名规则。
服务名称规则
- 服务名称不区分大小写,并且必须唯一。例如,您不能拥有一个名为
Foo
的服务和另一个名为foo
的服务。 -
特殊字符将从服务名称中删除并替换为下划线 (
_
)。特殊字符包括'\\', '/', '*', '?', '"', '<', '>', '|', ' ', ',', '#', ':', '-'
- 服务名称不区分大小写,并且必须唯一。例如,您不能拥有一个名为
- APM 内部指标:
- 日志
-
日志包括应用错误事件和应用日志。日志存储在以下数据流中
- APM 错误/异常日志记录:
logs-apm.error-<namespace>
- 应用 UI 日志记录:
logs-apm.app.<service.name>-<namespace>
- APM 错误/异常日志记录:
APM 数据流重路由
编辑APM 支持将 APM 数据重路由到用户定义的 APM 数据流名称,而不是默认名称。这可以通过在摄取管道中使用 reroute
处理器 来设置数据流数据集或命名空间来实现。分离 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 摄取管道指南,请参阅 使用摄取管道解析数据。