> ## Documentation Index
> Fetch the complete documentation index at: https://docs.molesignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# APM 设置

> 设置健康判定线、默认 Apdex 阈值、长任务、服务目录要求、服务命名、环境映射和服务别名；平台还可以设置基数上限和链路采样。

**APM → 设置**保存组织的 APM 设置。每张卡片单独用**保存**保存，**撤销修改**放弃尚未保存的输入。保存需要 `apm.manage` 权限，所有者、管理员和编辑者都具有该权限；没有该权限时页面只能查看设置。

保存的设置在保存它的节点上立即生效，在其他节点上 30 秒内生效。命名规则和环境映射作用于此后读到的 Span，APM 已经保存的数据保留原来的名字。健康判定线、默认 Apdex 阈值、服务别名和服务目录要求作用于每一次读取，已保存的数据也一样。

## 采集质量

第一张卡片读取过去一天的数据，列出需要处理的问题和可以通过设置改进的地方：

| 发现 | 含义 |
| - | - |
| 超过基数上限 | 某类名字（例如端点）超过了每小时的上限，多出的部分计入**其他**。对于能管理平台设置的用户，**调整基数上限**会跳到基数上限卡片。 |
| APM 漏读了 Span | 投影在这一天中留下了缺口。 |
| APM 数据滞后 | 最近一个完整的分钟已经是几分钟之前。 |
| 服务没有上报某个属性 | 服务没有上报 `deployment.environment.name`、`service.version` 或 `service.instance.id`。**去配置**打开 OpenTelemetry 接入指南。 |
| 环境名只有大小写不同 | 例如 `Production` 和 `production`。**全部读作**把映射加到环境映射卡片。 |
| 名字带自动生成的后缀 | 服务名像 Pod 名，例如 `checkout-7d9f8b6c5-x2x7k`。**添加命名规则**会加一条把它读作 `checkout` 的规则。 |

加到卡片里的建议在点击**保存**之前不会生效。

## 健康判定与阈值

| 设置 | 默认值 | 范围 |
| - | - | - |
| 错误率的**警告**和**严重** | 2% 和 10% | 警告线大于 0 且小于严重线，严重线最多 100%。 |
| P95 的**警告**和**严重** | 500 毫秒和 2,000 毫秒 | 警告线大于 0 且小于严重线，严重线最多 10 分钟。 |
| **默认 Apdex** T | 500 毫秒 | 大于 0，最多 1 分钟。服务目录中设置了自己 T 的服务保持不变。概览按这个 T 计算所有服务合在一起的 Apdex。 |
| **长任务**，P99 不低于 | 1,000 毫秒 | 1 毫秒到 10 分钟。端点列表把 P99 达到这个值的端点算作长任务。 |

这些线决定服务在目录、服务页、服务地图和概览健康趋势中的健康状态。

## 服务目录要求

**团队**、**负责人**和**代码仓库**分别设置从哪个等级起必须填写：**不要求**，或者某个等级及以上。缺少该项的服务会在目录中显示**缺少**及缺少的项。没有设置等级的服务不受要求。

## 服务命名

命名规则在读到 Span 时改写服务名。每条规则是一个正则表达式和一个替换文本，替换文本可以用 `$1` 或 `${name}` 引用表达式中的分组。规则按顺序尝试，第一条匹配的规则改写名字；改写成空名字时保持原名。**试一个服务名**会显示一个名字将被读作什么。

一个组织最多 20 条规则。链路保留 Span 上报的原名，因此在链路中搜索时要用规则改写之前的名字。

## 环境映射

每条映射在读到 Span 时把一个环境名读作另一个，不区分大小写，例如把 `Production` 和 `prod` 都读作 `production`。同一个环境最多映射一次，一个组织最多 50 条映射。

## 服务别名

别名用旧名字指代一个服务，两边各有自己的 Namespace，留空即为 `default`。别名上报的数据在所有 APM 页面按正式服务读取，与正式服务自己上报的数据合并，已保存的数据也一样。服务地图和发布上报也会按别名处理。删除别名后两者重新分开。

服务不能是自己的别名，一个名字只能作为一次别名，别名不能指向另一个别名。一个组织最多 100 个别名。从旧链接打开别名本身的页面时，读取的仍是别名自己的数据。

## 基数上限

具有 `sys.settings.manage` 权限的用户可以看到。这些上限对整个平台生效：每小时 APM 对每类名字最多分开记录这么多个，其余计入**其他**。

| 上限 | 默认值 |
| - | - |
| 每个组织的服务 | 200 |
| 每个服务的端点 | 32 |
| 每个服务的依赖 | 16 |
| 每个依赖的操作 | 32 |
| 每个服务的错误组 | 16 |
| 每个服务的版本 | 16 |
| 每个服务的实例 | 256 |

每个上限都是 1 到 100,000 之间的整数。每个节点每 30 秒重新读取一次。

## 调用链采样

具有 `sys.telemetry.read` 权限的用户可以看到，修改需要 `sys.telemetry.manage` 权限。采样策略决定链路结束后平台保留哪些链路：

* **普通调用链保留**是没有被规则、错误或慢调用保留的链路中保留的比例，默认 10%。
* 每条规则匹配 Span 带有其**服务**、**路由**和**操作**、耗时不低于**耗时下限 ms**，并在勾选**仅错误**时出错的链路，然后保留、丢弃或按比例保留这些链路。规则在普通比例之前按顺序尝试。

保存会向所有节点发布新版本的策略。APM 在采样之前统计全部链路，因此采样策略不会改变 APM 指标，只影响哪些链路可以打开。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.