• EnglishEspañol日本語한국어Português
  • EntrarComeçar agora

Esta tradução de máquina é fornecida para sua comodidade.

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

Criar um problema

newrelic_add_custom_tracer (API do agente PHP)

Sintaxe

newrelic_add_custom_tracer(string $function_name)

Especifique funções ou métodos para o agente instrumentar com instrumentação personalizada.

Requisitos

Compatível com todas as versões do agente.

Descrição

Especifique funções ou métodos para o agente de destino para instrumentação customizada. Este é o equivalente da API à configuração newrelic.transaction_tracer.custom .

Você não pode aplicar rastreamento personalizado a funções internas do PHP.

Parâmetro

Parâmetro

Descrição

$function_name

corda

Obrigatório. O nome pode ser formatado como function_name para funções procedurais ou como "ClassName::method" para métodos. Tanto os métodos estáticos quanto os de instância serão instrumentados se a sintaxe do método for usada, e o nome da classe deverá ser totalmente qualificado: deverá incluir o namespace completo se a classe tiver sido definida dentro de um namespace.

Valores de retorno

Retornará true se o tracer tiver sido adicionado com sucesso.

Exemplos

Instrumento uma função

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

Instrumento um método dentro de uma classe

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

Instrumento um método dentro de uma classe com namespace

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

Alternativamente, no PHP 5.5 ou posterior, a sintaxe ::class pode ser usada:

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 © 2024 New Relic Inc.

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