• ログイン

PHPエージェントの設定

PHPエージェントには、レポートされたデータのタイプと量を微調整するための多くの設定があります。ほとんどのユーザーにとっては、デフォルト値で最善のオーバーヘッドと使用しやすさが実現されます。ただし、特定のニーズに対する設定は変更できます。

重要

INI設定を変更後は、必ずウェブサーバーを再起動してください。再起動しないと、すぐに有効になりません

優先度の設定

以下の簡単な図は、PHPエージェントが設定で従う優先度です。サーバー側の設定には適用されません。PHPエージェントを使用してアプリのUIで変更できる唯一の値は、アプリのエイリアスとApdex-T値です。

New RelicのPHPエージェントを使用すると、API設定はディレクトリごとの設定を上書きします。ディレクトリごとの設定は、php.iniファイル設定を上書きします。サーバー側の設定には適用されません。

設定ファイルの変数

インストール中、newrelic-installスクリプトは、作成された設定ファイルまたは編集が必要なファイルのリストについての情報を提供します。デフォルトでは、newrelic.iniという名前の設定ファイルを作成しようとします。

場合によっては、設定オプションをphp.iniファイルに追加するよう指示されます。必要に応じて、そうしてください。どのファイルを編集する必要があるかは、PHPの特定のバージョン(1つまたは複数)が設定されている方法によって異なります。

2つの最も一般的な設定は、次のとおりです。

  • 単一のnewrelic.iniファイルを使用します。特別のオプションなしでPHPを自分でインストールまたはコンパイルした場合は、これが通常デフォルトとなります。
  • すべての.iniファイルについて所定のディレクトリをスキャンします。

どのファイルを編集するか分からない場合:

  • コマンドラインから、php -iの出力を見直します。

  • ブラウザで、次のスクリプトを含むページの出力を見直します:

    <?php phpinfo(); ?>
  • newrelic.iniファイルが表示されたら、それを使用します。

変数の範囲

newrelic.iniファイルの各変数には、定義された範囲があります。範囲は、設定をどこで確立または変更できるかを制御します。

New Relic設定にサポートされている2つの範囲は、次のとおりです。

  • SYSTEM:値はグローバルnewrelic.iniファイルでグローバルに設定されます。
  • PERDIR: 値はディレクトリごとに設定されます。

それぞれを、より一般的なレベルで設定することもできます。それぞれの有効なロケーションは、次のとおりです。

以下について設定できます。

SYSTEM

PERDIR

グローバルnewrelic.iniファイルで設定します。

ディレクトリごとに設定します。

重要

New Relic設定に、ini_set()は使用できません。

変数のタイプ

newrelic.iniファイルの各変数には、定義されたタイプがあります。タイプによって使用する値の構文が指定されます。

変数のタイプ

フォーマットと内容

文字列

文字列値には、英数字とピリオドを含めることができます。値は引用符で区切られます。

ブール値

論理的な真偽設定。有効な値は、次のとおりです。

  • trueまたはenabledの場合:ontrue、番号1
  • falseまたはdisabledの場合:offfalse、番号0

数値には、桁数に加え、フロートを表すピリオドのみを含めることができます。別途記載がある場合を除き、すべての数字はフロートではなく整数です。

期間

期間を表す、引用符で区切られた文字列の値。文字フラグを使用して、時間コンポーネントを区切ります。フラグがない場合、時間はミリ秒となります。

  • w\= 週数

  • d\= 日数

  • h\= 時間

  • m\= 分

  • s\= 秒

  • ms\= ミリ秒

  • us\= マイクロ秒

    期間の例:

  • "1w3d23h10m"\= 1週、3日、23時間、10分

  • "5h30m"\= 5時間30分

  • "500"\= 500ミリ秒

一般構成設定

これらの設定は、newrelic.iniファイルで使用できます。

New Relic CodeStreamを使用してIDEからパフォーマンスを監視する場合は、リポジトリをサービスに関連付けビルドSHAまたはリリースタグをエラーに関連付ける必要があります。

Daemon .ini 設定

これらの設定の値は、デーモン起動を制御します。デーモンの起動が必要なことをエージェントが検知すると、これらのオプションが、デーモンに適切なコマンドラインオプションに変換します。

これらのすべての設定は、newrelic.cfgファイルの設定を反映します。すべての .ini設定を1か所に保管するため、これらはここで繰り返されます。newrelic.cfgの各設定ではここに、プレフィックスとしてnewrelic.daemon.が付いた相手があります。たとえば、newrelic.cfgssl設定は.iniファイルのnewrelic.daemon.sslです。

重要

ファイル/etc/newrelic/newrelic.cfgがある場合、エージェントはこれらの設定を無視し、デーモンを自動的に起動しません

デーモンの起動方法および外部設定ファイルをいつ使用するかの詳細については、PHPデーモン起動モードを参照してください。

エージェントからデーモンへの通信用にソケットエンドポイントが設定されます。

これは4つの方法で指定できます。

  • UNIXドメインソケット(UDS)として指定されたファイルを使用するには、文字列として絶対パス名を入力します。これが、Linux以外のシステムではデフォルトです。

  • 標準のTCPポートを使用するには、1から65534の範囲で数字を指定します。

  • 抽象ソケットを使用するには、値@newrelic-daemon(エージェントバージョン5.2.0.141以上で使用可能)を使用します。これが、Linuxシステムではデフォルトです。

  • 別のホストで実行中のデーモンに接続するには(コンテナ環境で有用)、この値をhost:portに設定します。ここで、hostはホスト名またはIPを表し、portは有効なポート番号を表します。IPv4とIPv6の両方がサポートされています。これは、エージェントバージョン9.2.0.247以上で使用できます。

    注意

    エージェントからデーモンに転送されたデータは暗号化されません。唯一の例外は、データをデーモンに送信する前に行われるSQL難読化です。当社では、エージェントとデーモンとの間ではプライベートネットワーク接続のみを使用することを推奨しています(これは、エージェントとデーモンが別のホストで実行中の場合にのみ適用されます)。

    ポート番号を使用する場合、Unixシステムでは、ポートは1から1023の範囲にあり、デーモンはスーパーユーザーとして実行する必要があります。デーモンが標準以外のポートを使用する場合、この変数は、エージェントがデーモンとの通信に使用するポート番号も設定します。

    重要

    デーモンについてnewrelic.cfg起動メカニズムを使用中の場合は、この設定とそのファイルのaddress設定は一致する必要があります。

デーモン起動がトリガーされた後に、エージェントが待機する必要がある最大時間を設定します。値を0にすると、エージェントは待機しません。許容単位は"ns""us""ms""s""m"および"h"です。

指定されたタイムアウト値は、--wait-for-portフラグを介してデーモンに渡されます。これにより、ソケットの取得、またはタイムアウト時間が経過するまで、デーモンの起動がブロックされます。

推奨:タイムアウトを設定する場合、推奨値は2sから5sです。デーモンの起動に問題がある場合、エージェントはすべてのトランザクション開始時に所定のタイムアウトをブロックするため、時間のかかるバックグラウンドタスクのインストゥルメントをしている場合にのみ、このタイムアウトを設定することが推奨されます。

トランザクショントレーサー .ini 設定

これらの設定値を使用して、トランザクショントレースを制御します。

その他のトレーサー .ini 設定

これらの設定値を使用して、さまざまなトレーサー機能を制御します。

属性の設定

このセクションには、属性の収集とレポートに影響を与える設定が一覧記載されています。

その他の .ini 設定

このセクションには、残りのnewrelic.ini設定が一覧記載されています。

Copyright © 2022 New Relic株式会社。

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