IBM Cloud Application Performance Management

Python エージェントの構成

エージェントがモニター対象の Python アプリケーションからデータを収集できるように、Monitoring Agent for Python を構成する必要があります。

始める前に

エージェントを構成する前に、必ず Apache HTTPD サーバーを始動してください。

Apache HTTPD サーバーの httpd.conf 構成ファイルを開き、mod_status がロードされていることを確認します。

httpd.conf 構成ファイルにコード変更を加えていないモニター対象の Apache サーバーで、コマンド apachectl status が正しく動作することを確認します。正しく動作しない場合、ダッシュボードの一部のメトリック (ビジー・ワーカーやアイドル・ワーカーなど) が表示できない可能性があります。
注: コマンド apachectl status が正しく動作するためには、Lynx がインストールされていなければなりません。コマンドの有効化について詳しくは、『apachectl - Apache HTTP Server Control Interface』を参照してください。
エージェント・インスタンスの構成が初めてではない場合、以下のステップを実行します。
  1. エージェント・インスタンスを停止します。
  2. 以下のいずれかの手順に従いエージェント・インスタンスを構成します。
  3. 新しいミドルウェアが Django 設定フォルダーにデプロイされていることを確認します。これを行うには、Django 設定フォルダーの kpg_numeric_string.py ファイルが更新されていることを確認します。
  4. Apache サーバーを再始動します。

このタスクについて

エージェントの構成時に権限の問題が発生しないようにするために、必ず、エージェントのインストールに使用したのと同じ root ユーザー ID または非 root ユーザー ID を使用してください。選択されたユーザーとしてエージェントをインストールした後で、別のユーザーとしてエージェントを構成する場合は、非 root ユーザーとしてのエージェントの構成を参照してください。選択されたユーザーとしてエージェントをインストールおよび構成した後で、別のユーザーとしてエージェントを開始する場合は、非 root ユーザーとしてのエージェントの開始を参照してください。

Python エージェントは複数インスタンス・エージェントです。最初のインスタンスを作成し、エージェントを手動で開始する必要があります。管理対象システム名には、指定するインスタンス名が含まれます (例: instance_name:host_name:pc)。ここで pc は、ご使用の製品の 2 文字の製品コードです。管理対象システム名は 32 文字に制限されています。指定するインスタンス名は 28 文字 (ホスト名の字数は除く) までに制限されています。例えば、インスタンス名に Python2 を指定すると、管理対象システム名は Python2:hostname:PG になります。
重要: 長いインスタンス名を指定した場合、管理対象システム名は切り捨てられ、エージェント・コードが正しく表示されません。

手順

次のタスク

エージェント・インスタンスを開始すると、モニター・ミドルウェアをカスタマイズするためのインジェクション・スクリプトが生成されて、一時ディレクトリーに格納されます。

インジェクション・シェル・スクリプトは、エージェントの開始後に自動的に実行されます。このステップが正しく実行されたことを確認する場合は、以下のファイルが存在することを確認します。
  • install_dir/tmp/kpg/inject_numeric_string.sh
  • Django_setting_folder/kpg_numeric_string.py
重要: サフィックスの数値ストリングは、Django アプリケーションを示しています。当該の一時フォルダーに生成されたインジェクション・スクリプトが複数存在する場合は、同数の kpg_numeric_string.py ファイルがあります。
通常、インジェクション・スクリプトは、以下のジョブを実行します。
  • 各 Django アプリケーションのオリジナル WSGI 設定ファイルをバックアップします。
  • カスタマイズした WSGI 設定ファイルをコピーして、オリジナル・ファイルをオーバーライドします。
  • カスタマイズしたミドルウェアを Django アプリケーション・フォルダーに移動します。
  • Apache サーバーのモジュール状況を有効にします。
また、インジェクション・スクリプトは、各 Django アプリケーションからミドルウェアをアンインストールできるようにするアンインストール・スクリプトを生成します。
注: Apache 状況モジュールの使用可能化が複数のインジェクション・スクリプトに含まれていることがありますが、スクリプトの実行時にモジュールが追加されるのは 1 回のみです。
参考までに、Apache サーバーに対して以下の停止コマンドおよび再始動コマンドを使用できます。
  • 停止: apache_bin_directory/httpd -k graceful-stop
  • 再始動: apache_bin_directory/httpd -k graceful