エージェントのインストール
WhaTapモニタリングサービスを使用するには、会員登録後にプロジェクトを作成し、対象サーバーにエージェントをインストールする必要があります。会員登録に関する詳細については、次の文書を参照してください。
次の動画ガイドを参照してください。
プロジェクト作成
エージェントをインストールする前にプロジェクトを作成してください。
-
WhaTapモニタリングサービスに移動し、ログインします。
-
プロジェクトを作成するには、左のサイドメニューからプロジェクト全体 > + Projectボタンを選択します。
-
商品選択 画面でプロジェクトにインストールする製品を選択してください。
-
プロジェクト名、データサーバーリージョン、プロジェクトタイムゾーン項目を順番に設定します。
-
通知言語の設定で、警告通知メッセージの言語を選択します。
-
すべての設定を完了した後は プロジェクトを作成する ボタンを選択します。
-
データサーバーリージョンは、リージョン(クラウドサービスを提供するためにインストールしたデータセンターのグループ)を意味します。特定のリージョンを選択すると、そのリージョンに所属するデータセンターにユーザーのデータが保存されます。
-
プロジェクトタイムゾーンは通知とレポートを生成する基準時間です。
-
複数のプロジェクトをグループで管理する場合は、プロジェクトグループからグループを選択するか、グループを追加してください。 グループの詳細については、次の文書を参照してください。
-
組織を選択してプロジェクトを追加する場合は、組織下位のグループを必須に設定する必要があります。
アクセスキーの確認
アクセスキーは、WhaTapサービスを有効にするための固有IDです。
インストール手順セクションでプロジェクトアクセスキーの発行ボタンをクリックします。 アクセスキーを自動的に発行した後、次のステップを進みます。
プロジェクトを作成すると、自動的にエージェントインストールページに移動します。 エージェントインストールページが移動しない場合は、画面左側のメニューから管理 > エージェントインストールを選択してください。
Virtual Environmentの活性化
アプリケーションがvirtualenvを使用している場合は、仮想環境を有効にして ください。_bin/activate_ファイルを実行します。
エージェントダウンロード
アクセスキーを発給してエージェントダウンロドセクションに移動してください。 次のコードを実行してエージェントをインストールしてください。
pip install whatap-python
pipコマンドでインストールできない場合は、pypi WhaTapページからインストールファイルをダウンロードしてください。ダウンロードしたファイルを解凍してインストールを進めてください。
tar xzvf whatap-python-1.x.x.tar.gz \
cd whatap-python-1.X.Y.Z \
python setup.py install
エージェント構成ファイル
Pythonエージェントファイルは、アプリケーションモニタリングに必要な情報を抽出し、WhaTap収集サーバーに転送するトレーサーとトレーサーがデータを送信できるように支援する要素で構成されています。エージェントファイルの構成については、以下を参照してください。
Docker
Dockerコンテナでサービスされるアプリケーションの場合、次の内容を_DockerFile_に追加してください。
-
Pythonエージェントをインストールしてください。
DockerfileENV WHATAP_HOME /whatap
RUN mkdir -p /whatap
RUN pip install whatap-pythonノートrequirements.txtを使用する場合は、当該ファイルにwhatap-pythonを追加します。
-
アクセスキーおよび収集サーバーIP設定を登録してください。
DockerfileRUN touch /whatap/whatap.conf
RUN echo "license=[ ACCESS_KEY ]" > /whatap/whatap.conf
RUN echo "whatap.server.host=[ COLLECTION_SERVER_IP ]" >> /whatap/whatap.conf
RUN echo "app_name=[ AGENT_NAME ]" >> /whatap/whatap.conf
RUN echo "app_process_name=[ APPLICATION_PROCESS_NAME(uwsgi, gunicorn etc..) ]" >> /whatap/whatap.conf -
既存の実行コマンド
python manage.py runserver
の前に'whatap-start-agent'を追加してください。Dockerfile#ENTRYPOINT python manage.py runserver
ENTRYPOINT whatap-start-agent python manage.py runserver
エージェント設定
WHATAP_HOMEの基本パス設定
ログと設定ファイルパスのための$WHATAP_HOME
パスを指定してください。whatapディレクトリを新たに作成することをお勧めします。
$ export WHATAP_HOME=[PATH]
アクセスキーと収集サーバーのIP設定
次のコマンドを実行すると、$WHATAP_HOME
に指定したパスにwhatap.confファイルが設定されます。
whatap-setting-config \
--host [ COLLECTION_SERVER_IP ] \
--license [ ACCESS_KEY ] \
--app_name [ USER_DEFINED_AGENT_NAME ] \
--app_process_name [ APPLICATION_PROCESS_NAME(uwsgi, gunicorn etc..) ]
設定表示
次のように設定ファイル作成されていることを確認してください。
$ cat $WHATAP_HOME/whatap.conf
権限の問題が発生する場合
-
WhaTap設定のための_$WHATAP_HOME/whatap.conf_ファイルの読み取りおよび書き込み権限
-
WhaTapログのための_$WHATAP_HOME/logs_パスと下位ファイルの読み取りおよび書き込み権限
$WHATAP_HOME
パスに関する権限の問題が発生した場合は、次のコマンドを実行して権限を付与します。
echo `sudo chmod -R 777 $WHATAP_HOME`
アプリケーションサーバーの環境別の適用
Command
Commandの環境では次のようにwhatap-start-agent
コマンドを、アプリケーション開始コマンド(Application start command) の前に追加します。
# $ whatap-start-agent [Application start command]
$ whatap-start-agent python manage.py runserver
uWSGI
uWSGI環境では次のようにwhatap-start-agent
コマンドを、uwsgi
コマンドの前に追加します。
$ whatap-start-agent uwsgi --ini myapp.ini
サービスにuWSGIを登録してアプリケーションを実行する場合は、次の例題コードを参照してください。
description "uWSGI application server handling myapp"
start on runlevel [2345]
stop on runlevel [!2345]
exec whatap-start-agent [YOUR_APPLICATION_START_COMMAND]
# or if you are using a virtual environment
exec env WHATAP_HOME=[PATH] [ABSOLUTE_PATH]/whatap-start-agent [YOUR_APPLICATION_START_COMMAND]
...
NAME="uwsgi"
PATH=/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/bin/uwsgi
PID=$RUN/$NAME.pid
INI_PATH=/etc/$NAME/$NAME.ini
########## WHATAP_AGENT_CONF ##########
WHATAP_HOME=[PATH]
WHATAP_AGENT=[ABSOLUTE_PATH]/whatap-start-agent
...
do_start(){
env WHATAP_HOME=$WHATAP_HOME $WHATAP_AGENT [YOUR_APPLICATION_START_COMMAND]
}
-
ユーザー(User)を変更するなら
WHATAP_HOME
環境変数を追加します。 -
仮想環境を使用する場合は、エージェントの開始コマンドを絶対パスとして追加します。
-
サービス実行ファイル(/etc/init/uwsgi.conf)を修正して、エージェントの開始コマンドとともにアプリケーションを起動します。
-
ユーザー環境によって、サービス実行ファイルのパスは異なる場合があります。
Gunicorn
Gunicorn環境では次のようにwhatap-start-agent
コマンドを、Gunicorn
コマンドの前に追加します。
$ whatap-start-agent gunicorn myapp.wsgi
サービスにGunicornを登録してアプリケーションを実行する場合は、次の例題コードを参照してください。
description "gunicorn application server handling myapp"
start on runlevel [2345]
stop on runlevel [!2345]
exec whatap-start-agent [YOUR_APPLICATION_START_COMMAND]
# or if you are using a virtual environment
exec env WHATAP_HOME=[PATH] [ABSOLUTE_PATH]/whatap-start-agent [YOUR_APPLICATION_START_COMMAND]
...
NAME="gunicorn"
PATH=/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/bin/gunicorn
PID=$RUN/$NAME.pid
INI_PATH=/etc/$NAME/$NAME.ini
########## WHATAP_AGENT_CONF ##########
WHATAP_HOME=[PATH]
WHATAP_AGENT=[ABSOLUTE_PATH]/whatap-start-agent
...
do_start(){
env WHATAP_HOME=$WHATAP_HOME $WHATAP_AGENT [YOUR_APPLICATION_START_COMMAND]
}
-
ユーザー(User)を変更するなら
WHATAP_HOME
環境変数を追加します。 -
仮想環境を使用する場合は、エージェントの開始コマンドを絶対パスとして追加します。
-
サービス実行ファイル(/etc/init/gunicorn.conf)を修正して、エージェントの開始コマンドとともにアプリケーションを起動します。
-
ユーザー環境によって、サービス実行ファイルのパスは異なる場合があります。
Supervisor
[program:app-uwsgi]
environment = WHATAP_HOME=[PATH]
command = [ABSOLUTE_PATH]/whatap-start-agent /usr/local/bin/uwsgi --ini /home/blog/backend/config/uwsgi.ini
[program:nginx-app]
command = /usr/sbin/nginx
-
ユーザー(User)を変更するなら
WHATAP_HOME
環境変数を追加します。 -
仮想環境を使用する場合は、エージェントの開始コマンドを絶対パスとして追加します。
-
サービス実行ファイル(/etc/supervisor/conf.d/supervisor.conf)を修正して、エージェントの開始コマンドとともにアプリケーションを起動します。
-
ユーザー環境によって、サービス実行ファイルのパスは異なる場合があります。
WSGIアプリケーションを直接実装する
import whatap
@whatap.register_app
def simple_app(environ, start_response):
"""Simplest possible application object"""
status = '200 OK'
response_headers = [('Content-type', 'text/plain')]
start_response(status, response_headers)
return ['Hello world!\n']
コード(Code)に適用する
コードの一番上の列にAPIを直接呼び出すコードを、次のように追加してエージェントを適用できます。
import whatap
whatap.agent
アプリケーションサーバーを実行すると、エージェントがモニタリングデータを収集し始めます。
サービス実行の確認
次のコマンドを実行してWhaTap Pythonサービスが正常に実行されるか確認します。
ps -ef | grep whatap_python
次の段階
-
インストールの点検
プロジェクトの生成とエージェントのインストールまですべて適用した場合は、次の文書で点検事項を確認します。
-
インストール問題の解決
エージェントのインストール時に発生する可能性のある様々な問題と、これを解決するための具体的な指針を提供します。詳細については、次の文書を参照してください。
-
エージェント設定
エージェント設定(whatap.conf)ファイルにオプションを適用して、モニタリングのための様々な機能を提供します。デフォルト設定から、サーバーの接続とデータ転送の設定、複数のアプリケーションサーバーの設定ファイルの管理方法、トランザクションの追跡などが含まれます。詳細については、次の文書を参照してください。
-
モニタリングの開始
すべての設定を完了してから、次のアプリケーションサーバーを再起動します。エージェントが情報収集を開始します。まず、アプリケーションメニューでモニタリングデータが収集されているか確認します。アプリ ケーションについての詳細は、次の文書を参照してください。