Python アプリケーションに Application Real-Time Monitoring Service (ARMS) エージェントをインストールすると、ARMS はアプリケーションの監視を開始します。その後、トポロジー、トレース、SQL 分析など、アプリケーションの監視データを表示できます。このトピックでは、Python アプリケーションに ARMS エージェントを手動でインストールする方法について説明します。
Container Service for Kubernetes (ACK) クラスタにデプロイされたアプリケーションの場合は、ARMS エージェントを手動でインストールするのではなく、ack-onepilot コンポーネントをインストールすることをお勧めします。詳細については、ACK にデプロイされた Python アプリケーションに ARMS エージェントをインストールするを参照してください。
ARMS エージェントの使用に関してご質問がある場合は、DingTalk グループチャット (ID: 35568145) に参加してテクニカルサポートを受けてください。
始める前に
アプリケーションが存在する環境がインターネットまたは内部ネットワーク経由で Alibaba Cloud に接続されており、環境のセキュリティグループで TCP ポート 80 および 443 のアウトバウンドトラフィックが許可されていることを確認します。
Python とフレームワークのバージョンを確認します。詳細については、Python 用 ARMS エージェントの互換性要件を参照してください。
使用上の注意
アプリケーションの起動に Gunicorn を使用する必要がある場合は、コマンドの unicorn を gunicorn に変更します。
Unicorn を使用する:
unicorn -w 4 -b 0.0.0.0:8000 app:app
Gunicorn を使用する:
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
に設定します。GEVENT_ENABLE=true
ステップ 1: エージェントをダウンロードしてインストールする
Python Package Index (PyPI) リポジトリからエージェントインストーラーをダウンロードします。
pip3 install aliyun-bootstrap
aliyun-bootstrap を使用して Python 用 ARMS エージェントをインストールします。
aliyun-bootstrap -a install
ステップ 2: 環境変数を構成する
Python アプリケーションに次の環境変数を手動で追加します。
export ARMS_APP_NAME=xxx # アプリケーションの名前。
export ARMS_REGION_ID=xxx # リージョン ID。
export ARMS_LICENSE_KEY=xxx # ライセンスキー。
export ARMS_IS_PUBLIC=True # インターネット経由のアクセスを許可するかどうかを指定します。
API オペレーションを呼び出すことでライセンスキーを取得できます。詳細については、DescribeTraceLicenseKey を参照してください。
(オプション) Dockerfile のサンプル
Docker 環境では、次の Dockerfile のサンプルを参照して ARMS エージェントをインストールできます。
# 環境変数を追加します。
ENV ARMS_APP_NAME={AppName}
ENV ARMS_REGION_ID={regionId}
ENV ARMS_LICENSE_KEY={licenseKey}
## 元の環境
ステップ 3: アプリケーションを起動する
Python 用 ARMS エージェントを使用してアプリケーションを起動する場合は、次のコマンドを実行します。
aliyun-instrument python app.py
(オプション) アプリケーションのメインエントリファイル (例:
main.py/app.py
) に Python 用エージェントをインポートしてアプリケーションを起動する場合は、次のコマンドを実行します。
from aliyun.opentelemetry.instrumentation.auto_instrumentation import sitecustomize
結果を確認する
約 1 分後、ARMS console にログインします。左側のナビゲーションペインで、 を選択します。アプリケーションが アプリケーションリスト ページに表示されている場合、アプリケーションは監視されています。