在为Golang应用手动安装ARMS探针并部署到SAE之后,您就可以通过ARMS监控该应用。通过ARMS,您可以查看包括应用拓扑、调用链路分析、SQL性能分析等在内的多种监控数据。本文主要介绍如何为应用手动安装ARMS探针并部署至SAE。
前提条件
-
确保您的镜像构建环境和公网或阿里云内网连通,且编译环境所在安全组已开放8080、9990、80、443的TCP出方向权限。
-
检查您的网络环境。具体要求,请参见Golang应用监控网络配置。
-
检查您的镜像构建环境操作系统和架构,以及Go版本和框架版本。具体要求,请参见ARMS应用监控支持的Go组件和框架。
限制条件
此功能仅适用于通过镜像部署的Go语言应用。
步骤概述
-
准备项目:本文以Demo项目为例进行说明。
-
制作镜像并上传至ACR镜像仓库:把项目制作成镜像,并推送至阿里云ACR仓库,为在SAE上创建微服务应用做准备。
-
创建应用:将上传到镜像仓库的镜像部署到SAE,并访问应用。
-
查看应用监控:查看应用产生的多种监控数据。
1. 准备项目
上传Go语言项目至您准备好的环境中。
2. 制作镜像并推送至镜像仓库
2.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地址,可以直接使用对应操作系统和架构的杭州公网地址获取编译工具。
-
为二进制文件添加可执行权限。
RUN chmod +x instgo -
使用
./instgo build替换go build命令构建应用。RUN ./instgo go build {args1} {args2}如果您需要测试编译效果,或暂时无法获取到LicenseKey,可以直接进行编译。
RUN ./instgo go build {args1} {args2}
2.2 推送镜像至镜像仓库
将制作成功的Go语言镜像推送至阿里云镜像仓库。具体操作,请参见使用企业版实例推送和拉取镜像或推送拉取镜像。
3. 创建Go应用
本文只介绍关键步骤。创建应用的详细步骤,请参见使用镜像部署应用。
3.1 创建应用
-
在设置镜像面板,选择技术栈语言为Go,然后选择具体的镜像版本。
选择我的阿里云镜像页签,选中镜像服务个人版,在镜像列表中选择镜像版本为 go-demo-2。
-
在高级设置页面的应用监控区域,开启应用监控。
若选择开启应用监控,需在创建应用前修改自定义镜像,在编译构建过程中手动安装 Go 探针。ARMS 为 SAE 用户每月提供 200GB 免费额度。
-
单击创建应用。
3.2 访问测试
-
为应用添加公网访问地址。具体操作,请参见为应用绑定CLB并生成应用的公网或私网访问IP。
添加成功后,在公网访问地址区域可查看已绑定的公网 CLB 访问 IP 及端口(例如
xxx.xxx.xxx.xxx:2222),协议为HTTP。 -
复制公网访问地址,在浏览器上进行访问测试。
4. 查看应用监控
应用概览页面展示请求数、错误数、平均耗时、实例数等核心监控指标及其日同比/周同比变化,中部提供对应的趋势折线图和CPU使用率峰值蜂巢图,底部提供请求数、错误数、平均耗时、CPU使用率峰值的Top5排行。