• English日本語한국어
  • ログイン今すぐ開始

この機械翻訳は参考用に提供されます。

英語版と翻訳版に矛盾がある場合は、英語版が優先されます。詳細については、 を参照してください。

問題を作成する

newrelic_add_custom_tracer (PHPエージェントAPI)

構文

newrelic_add_custom_tracer(string $function_name)

エージェントがカスタムインストルメンテーションを行うための機能やメソッドを指定します。

要件

すべてのAgentバージョンに対応しています。

説明

カスタムインスツルメンテーションの対象となるエージェントの関数またはメソッドを指定します 。これは、 newrelic.transaction_tracer.custom の設定に相当するAPIです。

カスタムトレースをPHPの内部関数に適用することはできません。

パラメータ

パラメーター

説明

関数名

文字列

必須です。この名前は、手続き型関数の場合は function_name 、メソッドの場合は " ClassName::method" という形式で指定します。クラス名は完全に修飾されている必要があります。クラスが名前空間内で定義されている場合は、完全な名前空間を含める必要があります。

戻り値

トレーサーの追加に成功した場合は true を返します。

機能を計測する

function example_function() {
if (extension_loaded('newrelic')) { // Ensure PHP agent is available
newrelic_add_custom_tracer("example_function");
}
}

クラス内のメソッドを計測する

class ExampleClass {
function example_method() {
if (extension_loaded('newrelic')) { // Ensure PHP agent is available
newrelic_add_custom_tracer("ExampleClass::example_method");
}
}
}

名前付きクラス内のメソッドをインストゥルメントする

namespace Foo\Bar;
class ExampleClass {
function example_method() {
if (extension_loaded('newrelic')) { // Ensure PHP agent is available
newrelic_add_custom_tracer("Foo\\Bar\\ExampleClass::example_method");
}
}
}

また、PHP 5.5以降では、 ::class の構文を代わりに使用することもできます。

namespace Foo\Bar {
class ExampleClass {
function example_method() {
// ...
}
}
}
namespace {
use Foo\Bar;
if (extension_loaded('newrelic')) { // Ensure PHP agent is available
newrelic_add_custom_tracer(Bar::class . "::example_method");
}
}
}
Copyright © 2023 New Relic Inc.

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