升级到 v2.x

编辑

以下是关于将您的 Node.js 代理从 1.x 版本升级到 2.x 版本的指南。

概述

编辑

Node.js 代理的 2.0.0 版本需要 6.5 版本或更高版本的 APM 服务器,并使用新的 HTTP 接收 API。

新的代理支持 Node.js 6、8 和 10+。

错误 ID 的格式已从 UUID4 更改为十六进制格式的随机 128 位数字。同样,事务 ID 的格式也已从 UUID4 更改为十六进制格式的随机 64 位数字。

配置选项

编辑

配置顺序

编辑

Node.js 代理可以使用内联配置选项、环境变量和配置文件的组合进行配置。许多配置选项也具有默认值。这些应用的顺序在 2.0.0 中已更改。

在 1.x 中,配置选项相互覆盖的顺序为(更高的覆盖更低的):

2.0.0 中的新顺序为(更高的覆盖更低的):

更改的单位

编辑

在 1.x 中,配置选项 abortedErrorThreshold 期望一个毫秒值。在 2.0.0 中,默认时间单位是秒。如果您想继续使用毫秒,则需要指定单位,例如:1500ms

在 1.x 中,所有布尔型配置选项都可以使用字符串 onyes1 等来表示 true,类似的值表示 false。在 2.0.0 中,这已被限制,只有字符串 truefalse 将被解释为布尔等价物。

已移除的配置选项

编辑

以下配置选项已在 2.0.0 版本中移除

名称

说明

flushInterval

使用 apiRequestTime 代替。请注意,此选项的含义略有不同,因为接收 API 已更改。

maxQueueSize

使用 apiRequestSize 代替。请注意,此选项的含义略有不同,因为接收 API 已更改。

Agent API

编辑

在 2.0.0 中,agent.addFilter() 回调函数使用不同的有效负载(请参阅文档了解详细信息)。

虽然 addFilter() 函数仍然用于发送到 APM 服务器的所有类型的数据,但在 2.0.0 中也添加了三个新的过滤器函数:agent.addErrorFilter()agent.addTransactionFilter()agent.addSpanFilter(),分别仅用于错误、事务和跨度。

先前未记录的方法 span.offsetTime() 已在 2.0.0 中移除。

先前未记录的 transaction.buildSpan() 方法已在 2.0.0 中替换为 transaction.startSpan(name, type)

agent.buildSpan(name, type)span.start(name, type) 方法已在 2.0.0 中移除。它们已被 agent.startSpan(name, type) 替换。