在为Python应用手动安装ARMS探针并部署到SAE之后,您就可以通过ARMS监控该应用。通过ARMS,您可以查看包括应用拓扑、调用链路分析、SQL性能分析等在内的多种监控数据。本文主要介绍为应用手动安装ARMS探针并部署至SAE。
前提条件
确保您的编译环境和公网或阿里云内网连通,且编译环境所在安全组已开放80、443的TCP出方向权限。
检查您的Python版本和框架版本。具体要求,请参见Python探针兼容性要求。
注意事项
如果应用使用Unicorn启动,需要替换为Gunicorn。
例如:
unicorn -w 4 -b 0.0.0.0:8000 app:app
修改为:
gunicorn -w 4 -k uvicorn.workers.UvicornWorker -b 0.0.0.0:8000 app:app
如果有使用gevent协程,则需要设置环境变量
GEVENT_ENABLE=true
。例如程序中有使用:
from gevent import monkey monkey.patch_all()
需要设置环境变量如下:
GEVENT_ENABLE=true
步骤综述
准备项目:本文以Demo项目为例进行说明。
将Python项目制作Docker镜像或将Python项目打包成ZIP包:如果您是通过镜像的方式部署Python应用,需要在制作镜像时下载安装Python探针。如果您是通过代码包的方式部署Python应用,在部署应用的过程中系统会默认下载安装Python探针,您只需要通过ARMS Python探针启动应用即可。
部署Python应用:在SAE侧部署Python应用,并打开应用监控的开关。如果您是通过代码包部署Python应用,除了开启应用监控外还需要设置启动命令(通过ARMS Python探针启动应用)。
查看应用监控:查看应用产生的多种监控数据。
1. 准备项目
上传项目至您准备好的环境中。
安装运行项目必备的环境进行测试。具体操作,请参见软件包安装。
在本地进行测试,确保您的项目能够正常运行。
2. 将Python项目制作Docker镜像或将Python项目打包成ZIP包
制作Docker镜像并将其推送至镜像仓库
制作Python镜像。
本文只介绍下载探针、安装探针和使用ARMS Python探针启动应用的命令。
... # 从PyPI仓库下载探针安装器。 RUN pip3 install aliyun-bootstrap # 使用aliyun-bootstrap安装Python探针。 RUN aliyun-bootstrap -a install ... # 通过ARMS Python探针启动应用。 CMD ["aliyun-instrument","python","main.py"]
说明如果您不需要使用Python探针启动应用,需要在应用主入口文件(例如:
main.py
)引入Python探针,然后启动应用。from aliyun.opentelemetry.instrumentation.auto_instrumentation import sitecustomize
将制作成功的Python镜像推送至阿里云镜像仓库。具体操作,请参见推送拉取镜像(企业版)或推送拉取镜像(个人实例版)。
将Python项目打包成ZIP包
在您的本地环境中将Python项目打包成ZIP格式的压缩包。具体操作,请参见Python ZIP打包说明。
3. 创建Python应用
通过镜像的方式创建Python应用
3.1 创建应用
本文只介绍关键步骤。创建应用的详细步骤,请参见通过镜像部署微服务应用。
在设置镜像面板,选择技术栈语言为Python,然后选择具体的镜像版本。
在高级设置页面的应用监控区域,开启应用监控。
单击创建应用。
3.2 访问测试
使用公网访问地址进行测试
为应用添加公网访问地址。具体操作,请参见为应用绑定CLB。
复制公网访问地址,在浏览器进行访问测试。
在Webshell中进行访问测试
进入目标应用的基础信息页面,然后单击实例列表页签。
单击目标实例ID操作列的Webshell。
在Webshell页面,输入
curl 127.0.0.1:容器端口
进行测试。
通过代码包的方式创建Python应用
3.1 创建应用
本文只介绍关键步骤。创建应用的详细步骤,请参见在SAE控制台使用ZIP包部署Python应用。
在设置代码包部署面板,选择技术栈语言为Python,然后在上传 ZIP 包区域单击图标上传目标ZIP包。
在高级设置页面配置以下信息。
在启动命令区域,设置启动命令。
aliyun-instrument python main.py # 通过ARMS Python探针启动应用,main.py为本示例的主入口文件名。
在应用监控区域,开启应用监控。
单击创建应用。
3.2 访问测试
使用公网访问地址进行测试
为应用添加公网访问地址。具体操作,请参见为应用绑定CLB。
复制公网访问地址,在浏览器进行访问测试。
在Webshell中进行访问测试
进入目标应用的基础信息页面,然后单击实例列表页签。
单击目标实例ID操作列的Webshell。
在Webshell页面,输入
curl 127.0.0.1:容器端口
进行测试。
4. 查看应用监控
在SAE侧查看
进入目标应用的基础信息页面,然后在左侧导航栏单击应用监控,最后在应用监控页面查看监控数据。
在ARMS侧查看
登录ARMS控制台。
在左侧导航栏选择
,然后在顶部菜单栏选择目标地域。在应用列表页面的搜索框,搜索目标应用,然后单击目标应用名称。
在监控详情页面查看监控数据。