更新时间:2026-08-13 GMT+08:00
分享

Node.js应用接入APM

Node.js应用接入APM

  1. 登录APM控制台
  2. 在左侧导航栏中选择“应用监控 > 应用列表”。
  3. 进入“接入应用”页面。

    • 首次接入应用时,单击“点击接入应用”,进入“接入应用”页面。
    • 已有探针接入时,在页面右上角,单击“接入应用”,进入“接入应用”页面。

  4. 选择“区域”和“应用”。若未有应用,可单击“创建应用”,弹出“创建应用”弹窗,具体操作请参见创建应用
  5. “接入方式”选择“增强型探针”。
  6. “服务端语言”选择Node.js。
  7. 数据接入。

    • 无修改接入
      1. 请到“系统管理 > 访问密钥”界面,获取JavaAgent所需的AK、SK。获取“访问密钥”的方法,请参见管理APM访问密钥
      2. 使用SSH远程登录工具,登录待安装Agent的Linux操作系统主机,并以root或service权限执行相关命令。执行安装命令的用户需要和启动应用的用户保持一致。
      3. 接入命令如下:
        npm install -S apm-nodejs-agent && APM_APP_NAME=apm-nodejs-demo APM_AK=APM访问密钥 ID APM_SK=APM秘密访问密钥 APM_MASTER_ADDRESS=APM探针的接入地址 node -r apm-nodejs-agent/tracing app.js; history -cw; history -r
        表1 无修改接入参数

        环境变量

        入参

        描述

        选项

        APM_APP_NAME

        appName

        组件名称,一个组件可以包含多个环境。不能重复,如果要重复,使用APM_INSTANCE_NAME区分。

        必填

        APM_AK

        AK

        APM访问密钥ID(AK)。获取APM_AK方法参见管理APM访问密钥

        必填

        APM_SK

        SK

        APM秘密访问密钥(SK)。获取APM_AK方法参见管理APM访问密钥

        必填

        APM_MASTER_ADDRESS

        masterAddress

        APM探针的接入地址。请参见探针接入地址

        必填

        APM_BUSINESS

        business

        应用:代表一个逻辑单元,是一个全局概念,各个region都可以看到相同的应用信息,比如一个租户下面比较独立的功能模块可以定义为一个应用。如果填写,则必须提前创建该应用。如果为空,则代表默认应用。

        选填

        APM_SUB_BUSINESS

        subBusiness

        子应用:在一个应用下面可以创建多个子应用,主要起文件夹和管理的功能,子应用为全局概念,当前最多支持三层子应用,子应用格式为:sub1/sub2/sub3

        选填

        APM_ENV

        env

        环境:一个组件由于部署不同的配置参数,会形成的多个环境。

        选填

        APM_ENV_TAG

        envTag

        环境标签:是在环境上的一个属性,多个环境可能具有相同的标签,可以通过标签对环境进行过滤。

        选填

        APM_INSTANCE_NAME

        instanceName

        实例:是环境下的一个进程,名称由主机名+ip+实例名称组成。

        选填

    • 自定义接入
      1. 使用SSH远程登录工具,登录待安装Agent的Linux操作系统主机,并以root或service权限执行相关命令。执行安装命令的用户需要和启动应用的用户保持一致。
      2. 安装apm-nodejs-agent,命令如下:
        npm install -S apm-nodejs-agent
      3. 添加agent启动和配置项,示例如下:
            const process = require('process');
            const agent = require('apm-nodejs-agent');
        
            agent.start({
              appName: 'apm-nodejs-demo',
              masterAddress: 'APM探针的接入地址',
              AK: 'APM访问密钥',
              SK: 'APM秘密访问密钥'
            }).then(()=>{
              console.log('Agent trace start');
            }).catch((error)=>{
              console.log('Error agent trace',error);
            })
        
            process.on('SIGTERM',()=>{
              agent.stop();
            })
        表2 自定义接入参数

        环境变量

        入参

        描述

        选项

        APM_APP_NAME

        appName

        组件名称,一个组件可以包含多个环境。不能重复,如果要重复,使用APM_INSTANCE_NAME区分。

        必填

        APM_AK

        AK

        APM访问密钥ID(AK)。获取APM_AK方法参见管理APM访问密钥

        必填

        APM_SK

        SK

        APM秘密访问密钥(SK)。获取APM_AK方法参见管理APM访问密钥

        必填

        APM_MASTER_ADDRESS

        masterAddress

        APM探针的接入地址。请参见探针接入地址

        必填

        APM_BUSINESS

        business

        应用:代表一个逻辑单元,是一个全局概念,各个region都可以看到相同的应用信息,比如一个租户下面比较独立的功能模块可以定义为一个应用。如果填写,则必须提前创建该应用。如果为空,则代表默认应用。

        选填

        APM_SUB_BUSINESS

        subBusiness

        子应用:在一个应用下面可以创建多个子应用,主要起文件夹和管理的功能,子应用为全局概念,当前最多支持三层子应用,子应用格式为:sub1/sub2/sub3

        选填

        APM_ENV

        env

        环境:一个组件由于部署不同的配置参数,会形成的多个环境。

        选填

        APM_ENV_TAG

        envTag

        环境标签:是在环境上的一个属性,多个环境可能具有相同的标签,可以通过标签对环境进行过滤。

        选填

        APM_INSTANCE_NAME

        instanceName

        实例:是环境下的一个进程,名称由主机名+ip+实例名称组成。

        选填

相关文档