将SAE Go应用接入ARMS监控

在为Golang应用手动安装ARMS探针并部署到SAE之后,您就可以通过ARMS监控该应用。通过ARMS,您可以查看包括应用拓扑、调用链路分析、SQL性能分析等在内的多种监控数据。本文主要介绍如何为应用手动安装ARMS探针并部署至SAE。

前提条件

限制条件

此功能仅适用于通过镜像部署的Go语言应用。

步骤概述

  1. 准备项目:本文以Demo项目为例进行说明。

  2. 制作镜像并上传至ACR镜像仓库:把项目制作成镜像,并推送至阿里云ACR仓库,为在SAE上创建微服务应用做准备。

  3. 创建应用:将上传到镜像仓库的镜像部署到SAE,并访问应用。

  4. 查看应用监控:查看应用产生的多种监控数据。

1. 准备项目

上传Go语言项目至您准备好的环境中。

2. 制作镜像并推送至镜像仓库

2.1 制作镜像

本文只介绍下载编译工具和构建应用的命令。

  1. 下载编译工具。

    # 下载wget命令。
    RUN yum -y install wget
    
    # 本文以从杭州公网地址下载编译工具为例进行说明。
    RUN wget "http://arms-apm-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/instgo/instgo-linux-amd64" -O instgo

    在实际的生产环境中,请根据构建机所在地域,选择对应的下载地址。具体的下载地址,请参见各地域对应的下载命令

    说明

    各地域下载的编译工具是相同的,如果您的公网环境可以访问OSS地址,可以直接使用对应操作系统和架构的杭州公网地址获取编译工具。

  2. 为二进制文件添加可执行权限。

    RUN chmod +x instgo
  3. 通过OpenAPI获取LicenseKey。具体方法,请参见DescribeTraceLicenseKey - 列出LicenseKey

  4. 使用./instgo build替换go build命令构建应用。

    # 把{licenseKey}替换为上一步获取到的LicenseKey,将instgo放到之前go build前即可
    RUN ./instgo se --licenseKey="{licenseKey}" --cacheDir=./
    RUN ./instgo go build {args1} {args2}

    如果您需要测试编译效果,或暂时无法获取到LicenseKey,可以直接进行编译。

    RUN ./instgo go build {args1} {args2}

2.2 推送镜像至镜像仓库

将制作成功的Go语言镜像推送至阿里云镜像仓库。具体操作,请参见使用企业版实例推送和拉取镜像推送拉取镜像

3. 创建Go应用

本文只介绍关键步骤。创建应用的详细步骤,请参见使用镜像部署应用

3.1 创建应用

  1. 设置镜像面板,选择技术栈语言Go,然后选择具体的镜像版本。

    Zjyqn9Csms

  2. 高级设置页面的应用监控区域,开启应用监控

    qVjKh7KK96

  3. 单击创建应用

3.2 访问测试

  1. 为应用添加公网访问地址。具体操作,请参见为应用绑定CLB并生成应用的公网或私网访问IP

    oG7Zx8icdv

  2. 复制公网访问地址,在浏览器上进行访问测试。

4. 查看应用监控

  • 登录ARMS控制台,在应用监控 > 应用列表页面进入目标应用,查看监控数据。

  • 登录SAE控制台,通过应用管理 > 应用列表进入目标应用的基础信息页面,然后在左侧导航栏单击应用监控,查看监控数据。

ZzhYn22HbM