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

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

Caso haja alguma divergência entre a versão em inglês e a traduzida, a versão em inglês prevalece. Acesse esta página para mais informações.

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.