全部產品
Search
文件中心

Application Real-Time Monitoring Service:手動安裝Python探針

更新時間:Oct 31, 2024

為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

步驟一:下載並安裝探針

  1. 從PyPI倉庫下載探針安裝器。

    pip3 install aliyun-bootstrap
  2. 使用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控制台應用監控 > 應用列表頁面中且有資料上報,則說明接入成功。

2024-09-23_17-45-22