APMインサイト-Pythonエージェントのインストール
APMインサイトでPythonアプリケーションを監視するには、Data ExporterをPythonエージェントとともにインストールする必要があります。
Data Exporterは、アプリケーションのメトリクスとトレースをApplications Managerサーバーに通信するために必要なプロセスです。
Data Exporterのインストール方法に関しましては、以下のリンクをご参照ください
Data Exporterは、アプリケーションのメトリクスとトレースをApplications Managerサーバーに通信するために必要なプロセスです。
Data Exporterのインストール方法に関しましては、以下のリンクをご参照ください
以下の方法で、APMインサイトのPythonエージェントをインストールします。
- [APM]タブ→[監視の追加]をクリックし、「Python」を選択
- エージェントダウンロードページからPythonエージェントとData Exporterをダウンロードして解凍
-
仮想環境を使用している場合は、それをアクティブ化し、抽出したPythonエージェントをインストールしたディレクトリに移動して、次のコマンドを実行
仮想環境にPythonパッケージをインストールします。python3 setup.py install
- 次のいずれかの方法を使用して、Pythonエージェントをアプリケーションに適用
- 手順4を設定後、変更したファイルを保存し、アプリケーションを再起動
- アプリケーション再起動後、エージェントがデータ収集するためにアプリケーション側でトランザクションを実行
- Applications Managerの[APM]タブに移動し、追加したPythonアプリケーションをクリックし、データ収集が実行されているか確認
- プロセスによって生成された、Pythonエージェントインストールフォルダ/apminsightdata/logs配下にエージェントログファイルを確認
コマンドラインを使用
Pythonエージェントをアプリケーションに適用するには、次のコマンドを使用してアプリケーションを実行する必要があります。
$ apminsight-run <apm-options> "<user_application_execute_command>"
<apm-options>は引数です。代入できるオプションのリストは次のとおりです。
apm-options | 説明 |
---|---|
---apm_app_name | APMアプリケーション名を追加します。 |
--apm_log_dir | APMログを保存するためのカスタムログディレクトリを追加します。/td> |
--apm_debug | デバッグモードを有効にします。 |
--apm_exp_host | Applications Manager Data Exporterホストを設定します。 |
--apm_exp_status_port | Applications Manager Data Exporterステータスポートを設定します。 |
--apm_exp_data_port | Applications Manager Data Exporterデータポートを設定します。 |
実行コマンド例:
-
アプリケーション名を設定したい場合の実行コマンド:
$ apminsight-run --apm_app_name "monitorname"
-
ディレクトリの場所を指定した場合の実行コマンド:
$ apminsight-run --apm_app_name "monitorname" --apm_log_dir "logs location"
スニペットを使用
Pythonエージェントをアプリケーションに適用するには、次のスニペットで必要な設定情報を更新し、アプリケーションルートファイルまたはアプリケーションスタートファイルの先頭に配置する必要があります。
from apminsight import initialize_agent
initialize_agent({
"appname" : "<Your_application_name>",
})
Data Exporterが別のマシンで実行されている場合、またはデフォルトポート以外で実行されている場合は、次のスニペットで設定情報を更新してください。
from apminsight import initialize_agent
initialize_agent({
"appname" : "<Your_application_name>",
'''Change if Applications Manager Data Exporter is not running in the default ports (20021, 20022):'''
"exporter_status_port" : "<DataExporter_status_port>",
"exporter_data_port" : "<DataExporter_data_port>",
'''If you are running Applications Manager Data Exporter on a separate machine/server or as a Docker container:'''
"exporter_host" : "<HostName/ContainerName_where_Data_Exporter_is_running>"
})
スニペット例:
-
Djangoアプリケーションの場合:
Djangoのsettings.pyファイルの先頭にスニペットを追加します。
Djangoアプリケーションの名前は、アプリケーションのsettings.pyファイル内のWSGI_APPLICATIONから自動的に検出されます。 -
Flaskなどの他のアプリケーションやフレームワークの場合:
アプリケーションスタートファイルの先頭にスニペットを追加します。
以下の環境変数を用いてエージェントを設定します。
設定 | 説明 |
---|---|
$ export APM_APP_NAME="<Your_application_name>" | アプリケーション名を追加します。 |
$ export APM_LOGS_DIR="<logs_storing_path>" | ログディレクトリを設定します。 |
$ export APM_EXPORTER_STATUS_PORT=<DataExporter_status_port> $ export APM_EXPORTER_DATA_PORT=<DataExporter_data_port> |
Applications Manager Data Exporterのデフォルトの実行ポート(20021、20022)を変更します。 |
$ APM_EXPORTER_HOST=<HostName/ContainerName_where_DataExporter_is_running> | Applications Manager Data Exporterのホストを別のマシンまたはサーバー、Dockerコンテナーに変更します。 |