為Python應用安裝探針後,ARMS即可開始監控Python應用,您可以查看應用拓撲、調用鏈路、SQL分析等一系列監控資料。本文介紹如何為Python應用手動安裝探針。
說明
對於部署在Kubernetes環境的應用,不推薦手動安裝探針,建議通過安裝組件的方式接入ARMS。具體操作,請參見Container ServiceACK通過ack-onepilot組件安裝Python探針。
如果您在使用Python探針過程中有任何問題,歡迎通過DingTalk答疑群(群號:35568145)與我們聯絡。
前提條件
確保您的編譯環境和公網或阿里雲內網連通,且編譯環境所在安全性群組已開放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
步驟一:下載並安裝探針
從PyPI倉庫下載探針安裝器。
pip3 install aliyun-bootstrap
使用aliyun-bootstrap安裝Python探針。
aliyun-bootstrap -a install
步驟二:配置環境變數
您需要手動為Python應用添加以下環境變數:
export ARMS_APP_NAME=xxx # 應用程式名稱。
export ARMS_REGION_ID=xxx # 對應的阿里雲帳號的RegionID。
export ARMS_LICENSE_KEY=xxx # 阿里雲 LicenseKey。
export ARMS_IS_PUBLIC=True
其中LicenseKey可以通過OpenAPI擷取,具體方法,參見DescribeTraceLicenseKey - 列出LicenseKey。
(可選)Docker環境安裝參考
對於Docker環境,可以參考以下Dockerfile樣本修改您的Dockerfile檔案。
# 添加環境變數
ENV ARMS_APP_NAME={AppName}
ENV ARMS_REGION_ID={regionId}
ENV ARMS_LICENSE_KEY={licenseKey}
## 原有環境
步驟三:啟動應用
通過ARMS Python探針啟動應用
aliyun-instrument python app.py
(可選)不使用Python探針啟動的方式
在應用主入口檔案引入Python探針,然後啟動應用。
例如在main.py/app.py
檔案中引入Python探針。
from aliyun.opentelemetry.instrumentation.auto_instrumentation import sitecustomize
結果驗證
約一分鐘後,若Python應用出現在ARMS控制台的 頁面中且有資料上報,則說明接入成功。