• ログイン今すぐ開始

本書は、お客様のご参考のために原文の英語版を機械翻訳したものです。

英語版と齟齬がある場合、英語版の定めが優先するものとします。より詳しい情報については、本リンクをご参照ください。

問題を作成する

Dockerなどのコンテナ環境PHPエージェントのインストール

PHP エージェントを Docker コンテナまたは他のコンテナにインストールして、1 つ以上の PHP アプリケーションを監視できます。これは、 PHP エージェントの要件を満たすコンテナでサポートされています。

注意

PHP エージェントのデーモンは、1 分間にわたる の収穫サイクルの間、定期的に New Relic にデータを送信します。 。コンテナを頻繁に起動したり破棄したりする場合は、デーモンコンテナを十分な時間稼働させ、残っているデータを送信するようにしてください。

コンテナオプション

PHP エージェントが動作するには、PHP エージェント (アプリケーションごとに 1 つ) と、1 つまたは複数のエージェントから送信されたデータを集約して New Relic に送信する デーモン という 2 つのコンポーネントが必要です。このため、コンテナ環境で PHP エージェントを有効にするには 2 つのオプションがあります。

エージェントとデーモンを別々のコンテナにインストール

要件:

アプリケーションの例を見るには、 New Relic's Explorers Hub にアクセスしてください。短時間動作のアプリケーションコンテナを使用する場合は、 PHP エージェントのデーモン用に別のコンテナを使用することをお勧めします。

注意

エージェントからデーモンに送信されるデータは暗号化されていません。これに対する唯一の例外は、デーモンにデータを送信する前に発生するSQLの難読化です。エージェントとデーモンが異なるホストで実行されている場合は、エージェントとデーモンの間でプライベートネットワーク接続を使用することをお勧めします。

デーモン・コンテナの設定

Dockerを使用している場合は、 Docker Hub からデーモンイメージを引き出すことができます。

  1. 次のコマンドを実行します: docker pull newrelic/php-daemon
  2. イメージをカスタマイズするには、 Docker Hub の手順に従ってください。

また、独自のデーモンイメージを構築することもできます。

  1. デーモンをインストールするには、New RelicのtarファイルダウンロードサイトからPHPエージェントパッケージをダウンロードし、 install_daemon引数を指定してnewrelic-installスクリプトを実行します。
  2. --addressおよび--watchdog-foreground引数を使用してデーモンを起動します。

--address引数は、デーモンが接続を受け入れるためのポートを設定します。 --watchdog-foreground引数は、デーモンがフォアグラウンドで実行されることを保証します。

PHP エージェントコンテナの設定

PHPのエージェントコンテナをDocker用に設定するには、以下の手順に従います。

  1. コンテナでPHPインストールが利用可能であることを確認してください。たとえば、 php:7.1のような公開されたDockerイメージを使用します。
  2. エージェントをインストールするには、New RelicのtarファイルダウンロードサイトからPHPエージェントパッケージをダウンロードし、 install引数を指定してnewrelic-installスクリプトを実行します。
  3. newrelic.iniファイルで、アプリケーション名とライセンスキーnewrelic.appnameおよびnewrelic.licenseエントリで設定します。
  4. newrelic.iniファイルでnewrelic.daemon.addressオプションを設定して、エージェントをデーモンにポイントします。このオプションの値がHOST:PORTであることを確認してください。ここで、 HOSTはデーモンが実行されているホストの名前またはIPアドレスであり、 PORTはデーモンがリッスンしているポート番号です。

エージェントとデーモンを同じコンテナにインストール

注意

デフォルトでは、最初のトランザクションにより、エージェントはデーモンの開始とアプリケーション接続の初期化をトリガーします。パフォーマンス上の理由から、エージェントは接続を初期化する前にこれらの操作が完了するのを待ちません。これにより、コンテナーの開始後の最初のいくつかのトランザクションが失われる可能性があります。この損失を防ぐには、 newrelic.iniファイルのnewrelic.daemon.start_timeout }エントリとnewrelic.daemon.app_connect_timeoutエントリの両方を推奨値の5秒と15秒にそれぞれ設定します。

PHPのエージェントとデーモンを同じDockerコンテナにセットアップするには、次のようにします。

  1. コンテナでPHPインストールが利用可能であることを確認してください。例: php:7.1のような公開されたDockerイメージを使用できます。
  2. エージェントをインストールするには、New RelicのtarファイルダウンロードサイトからPHPエージェントパッケージをダウンロードし、 install引数を指定してnewrelic-installスクリプトを実行します。
  3. newrelic.iniファイルのnewrelic.licenseおよびnewrelic.appnameエントリを介してアプリケーション名とライセンスキーを設定します。

ヒント

ここでは、Dockerのトラブルシューティングについてご紹介します。

While you wait for your data to come in...

Did this doc help you install?

Copyright © 2022 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.