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.
Tanto o atributo padrão quanto o personalizado são visíveis em trace da transação, trace distribuído e análise de erros; Evento APM e evento do browser no painel. Você pode personalizar exatamente qual atributo será enviado para cada um desses destinos.
Este documento descreve o atributo do agente Java, detalha como ativar ou desativar o atributo e descreve as regras que o agente segue para determinar qual atributo incluir ou excluir para um destino.
Dica
Essas configurações de atributo se aplicam à versão 3.7.0 ou superior do agente Java. Se você usa uma versão mais antiga do agente, consulte Atualizar configuração do legado atributo.
O código de status de resposta para uma solicitação da web. A chave para este atributo é http.statusCode. Nota: As versões do agente abaixo de 8.0.0 usaram o atributo httpResponseCode.
A configuração padrão para cada destino é:
Rastreamento da transação: Habilitado
Análise de erros: habilitada
Evento APM: Habilitado
Evento do browser: Desativado
A mensagem de status de resposta, se presente para uma solicitação da web. A chave para este atributo é http.statusText. Nota: As versões do agente abaixo de 8.0.0 usaram o atributo httpResponseMessage.
A configuração padrão para cada destino é:
Rastreamento da transação: Habilitado
Análise de erros: habilitada
Evento APM: Habilitado
Evento do browser: Desativado
O nome do tópico. A chave para este atributo é jvm.thread_name.
A configuração padrão para cada destino é:
Rastreamento da transação: Habilitado
Análise de erros: habilitada
Evento APM: Desativado
Evento do browser: indisponível
O nome de um thread bloqueado. A chave para este atributo é jvm.lock_thread_name.
A configuração padrão para cada destino é:
Rastreamento da transação: Indisponível
Análise de erros: habilitada
Evento APM: Indisponível
Evento do browser: indisponível
Atributo adicionado por uma chamada à API do agente Java NewRelic.addCustomParameter(...) . O nome da chave para esse atributo depende do que você especifica ao chamar o método.
Atributo adicionado a uma chamada NoticeError() na API do agente Java. O nome da chave para esse atributo depende do que você especifica ao chamar o método.
A configuração padrão para cada destino é:
Rastreamento da transação: Indisponível
Análise de erros: habilitada
Evento APM: Indisponível
Evento do browser: indisponível
O agente Java pode capturar os seguintes cabeçalhos de resposta e solicitação como atributo:
Cabeçalhos de solicitação HTTP capturados:
request.headers.referer
request.headers.accept
request.headers.contentLength
request.headers.host
request.headers.userAgent
Cabeçalho de resposta capturado: response.headers.contentType
O agente não captura outros cabeçalhos de solicitação.
O sistema de atributo não se aplica a nenhum valor de cabeçalho diferente dos listados acima. Se desejar capturar cabeçalhos de solicitação adicionais não listados aqui, você deverá usar a opção de configuração custom_request_headers para especificar cabeçalhos a serem capturados pelo agente. Como alternativa, você mesmo pode registrar diretamente os cabeçalhos usando o método addCustomParameter() da API do agente Java.
A configuração padrão para cada destino é:
Rastreamento da transação: Habilitado
Análise de erros: habilitada
Evento APM: Habilitado
Evento do browser: Desativado
O agente Java captura os métodos de solicitação GET, POST e PUT por padrão como parte do atributo request.method .
Os parâmetros de solicitação da transação não são capturados por padrão. Use a API do agente Java addCustomParameter() para capturar o parâmetro da solicitação.
A chave para esses atributos é request.parameters.*. Se a captura de informações confidenciais for uma preocupação, você pode usar estas opções:
Evite usar curingas em attributes.include. Em vez disso, especifique explicitamente cada campo a ser capturado.
Se você quiser usar um curinga em attributes.include, exclua explicitamente os campos confidenciais usando attributes.exclude.
Coletar atributos do usuário
Com o agente Java do APM, você pode coletar automaticamente informações do usuário editando seu arquivo de configuração. Você pode então executar a consulta NRQL com base nas informações do usuário sem precisar criar um atributo personalizado manualmente. Este recurso está disponível com o agente Java 3.10.0 da New Relic ou mais alto.
# This instrumentation reports the name of the user principal returned from
# HttpServletRequest.getUserPrincipal() when servlets and filters are invoked.
com.newrelic.instrumentation.servlet-user:
enabled:true
Reinicie seu servidor web.
Se você estiver usando o 8.1.0 versão do agente Java ou superior, você pode consultar o atributo enduser.id ativando com.newrelic.instrumentation.servlet-user ou usando a API pública e aguardando alguns minutos. Por exemplo, você poderia usar a seguinte consulta NRQL para obter uma contagem exclusiva de todos os usuários:
SELECT uniqueCount(enduser.id)FROMTransaction SINCE 1day ago
Você pode configurar quais tipos de atributo, ou qual atributo específico, o agente Java reporta à New Relic. Isso geralmente é feito por motivos de segurança, quando há certos atributos confidenciais que você não deseja que sejam relatados à New Relic. Para saber quais configurações substituem outras configurações, consulte as regras de configuração do atributo.
O agente Java segue estas regras ao determinar qual atributo incluir ou excluir para um destino:
Se você definir a propriedade attributes.enabled principal como false, o agente não reportará nenhum atributo.
Configuração do agente:
attributes.enabled: false
attributes.include: request.parameters.*
error_collector.attributes.enabled: true
Chaves de entrada:
foo
bar
request.parameters.foo
request.parameters.bar
Saída do agente:
Rastreamento da transação: Sem atributo
Análise de erros: sem atributo
Evento APM: Sem atributo
Evento do browser: Sem atributo
Quando você define ativado como false para um destino, o agente ignora suas configurações de inclusão/exclusão e não relata nenhum atributo para esse destino.
Configuração do agente:
transaction_tracer.attributes.enabled: false
attributes.include: one, two*
transaction_tracer.attributes.include: three, four
Chaves de entrada:
one
two
three
four
Saída do agente:
Rastreamento da transação: Sem atributo
Análise de erros: one, two
Evento APM: one, two
Evento do browser: Sem atributo
As propriedades .exclude substituem as propriedades .include .
Configuração do agente:
attributes.enabled: true
attributes.include: foo, myCustomAtt
attributes.exclude: password, myCustomAtt
Chaves de entrada:
foo
myCustomAtt
password
Saída do agente:
Rastreamento da transação: foo
Análise de erros: foo
Evento APM: foo
Evento do browser: foo
Se vários atributos de inclusão ou exclusão afetarem a mesma chave, a configuração mais específica terá prioridade.
Configuração do agente:
attributes.enabled: true
attributes.include: foo, myCustomAtt
attributes.exclude: password, myCustomAtt
browser_monitoring.attributes.enabled: true
Chaves de entrada:
food
food.bread
food.fruit.banana
food.fruit.apple
Saída do agente:
Rastreamento da transação: food.fruit.apple
Análise de erros: food.fruit.banana, food.fruit.apple
Evento APM: food.fruit.banana, food.fruit.apple
Evento do browser: food.fruit.banana, food.fruit.apple
As chaves especificadas nas propriedades .include e .exclude diferenciam maiúsculas de minúsculas.
Configuração do agente:
attributes.enabled: true
attributes.exclude: password, PaSsWoRd
Chaves de entrada:
password
Password
PASSWORD
PaSsWoRd
PassWORD
Saída do agente:
Rastreamento da transação: Password, PASSWORD, PassWORD
Análise de erros: Password, PASSWORD, PassWORD
Evento APM: Password, PASSWORD, PassWORD
Evento do browser: Password, PASSWORD, PassWORD
Você pode usar um asterisco * no final de uma chave como curinga. Isso corresponderá a um conjunto de atributo com o mesmo prefixo.
Configuração do agente:
attributes.enabled: true
attributes.include: custom*
attributes.exclude: request.parameters.*
Chaves de entrada:
custom
custom.key1
custom.key2
request.parameters.
request.parameters.foo
request.parameters.bar
Saída do agente:
Rastreamento da transação: custom, custom.key1, custom.key2
Análise de erros: custom, custom.key1, custom.key2
Evento APM: custom, custom.key1, custom.key2
Evento do browser: custom, custom.key1, custom.key2