• /
  • EnglishEspañolFrançais日本語한국어Português
  • Se connecterDémarrer

Cette traduction automatique est fournie pour votre commodité.

En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.

Créer un problème

newrelic_add_custom_tracer (API d'agent PHP)

Syntaxe

newrelic_add_custom_tracer(string $function_name)

Spécifiez les fonctions ou méthodes que l' agent doit instrumenter avec instrumentation personnalisée.

Exigences

Compatible avec toutes les versions d'agent.

Description

Spécifiez les fonctions ou méthodes que l' agent doit cibler pour instrumentation personnalisée. Il s'agit de l'équivalent API du paramètre newrelic.transaction_tracer.custom .

Vous ne pouvez pas appliquer de traçage personnalisé aux fonctions PHP internes.

Paramètres

paramètres

Description

$function_name

chaîne

Requis. Le nom peut être formaté soit comme function_name pour les fonctions procédurales, soit comme "ClassName::method" pour les méthodes. Les méthodes statiques et instance seront instrumentées si la syntaxe de la méthode est utilisée, et le nom de la classe doit être entièrement qualifié : il doit inclure l'espace de nommage complet si la classe a été définie dans un espace de nommage.

Valeurs de retour

Renvoie true si le traceur a été ajouté avec succès.

Exemples

Instrumenter une fonction

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

Instrumenter une méthode dans une classe

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

Instrumenter une méthode dans une classe avec espace de noms

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");
}
}
}

Alternativement, sur PHP 5.5 ou version ultérieure, la syntaxe ::class peut être utilisée à la place :

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");
}
}
Droits d'auteur © 2025 New Relic Inc.

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