• /
  • 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

Perfil em tempo real para Java usando métrica JFR

Com a criação de perfil em tempo real para Java da New Relic usando a métrica Java Flight Recorder (JFR), você pode executar a criação de perfil contínua e sempre ativa de seu código Java no ambiente de produção. A visualização da linha do tempo do cluster JVM que acompanha fornece uma maneira rápida e intuitiva de diagnosticar problemas de desempenho em todo o cluster. Por exemplo, você pode ver rapidamente como a implantação de um aplicativo afeta a integridade geral do cluster.

Encontre desempenho gargalo

A resolução de problemas performance gargalo em seu aplicativo ou serviço Java pode ajudá-lo a entender melhor o seguinte:

  • Onde você está desperdiçando recursos
  • Quando ocorre um incidente
  • O que aconteceu durante um incidente
  • Quais problemas de desempenho levaram a um incidente

Para tornar a resolução de problemas mais rápida e fácil, você precisa ver as características de tempo de execução de alta fidelidade do seu código em execução na JVM e precisa desses dados em tempo real.

DaemonJFR

O daemon JFR é um exportador de eventos JFR que permite aproveitar o poder da plataforma New Relic para visualizar o comportamento de sua JVM. Usando o SDK de telemetria Java da New Relic como implementação subjacente, o daemon JFR converte o evento JFR em tipos de telemetria da New Relic e os reporta à API de ingestão de eventos e métricas da New Relic.

Existem três cenários de uso diferentes para o daemon JFR:

  • Serviço JFR do agente Java New Relic (RECOMENDADO) - monitoramento JFR integrado ao principal agente Java New Relic. Nenhuma configuração adicional é necessária, basta instalar o agente Java, certificar-se de que o serviço JFR esteja ativado e os dados JFR fluirão para o mesmo aplicativo

    que o agente Java. Requer agente Java New Relic versão 7.0.0+.

  • Processo independente : execute o jfr-daemon como um processo independente e configure-o para monitor um processo Java existente usando JMX remoto.

  • Agente Java independente – Anexe o jfr-daemon ao seu processo Java como um agente Java. Uma alternativa leve ao agente Java New Relic.

Versões Java suportadas

Embora o daemon JFR suporte qualquer versão do Java 11 e superior, não recomendamos o uso de nenhuma versão não-LTS do Java no ambiente de produção.

Alguns fornecedores fizeram backport do JFR para seus binários Java 8. Por exemplo, o OpenJDK fez backport do JFR na versão 8u262. O daemon JFR é compatível com essas versões Java.

Requisitos e instruções de uso

Os requisitos e instruções variam para cada cenário de uso. Para obter detalhes completos, consulte os links para seu cenário de uso específico:

Importante

Os aplicativos executados com o daemon JFR devem esperar que o subsistema JFR use memória adicional.

Dica

Com o agente Java versão 8.0.0 ou superior, é possível alterar dinamicamente a configuração de criação de perfil JFR sem reiniciar suas JVMs. Faça isso alternando a configuração em Settings > Application > Java Flight Recorder ou alterando a configuração jfr.enabled .

Ver seus dados

Para visualizar seus dados, vá para one.newrelic.com > All capabilities > APM & Services > (select service) > More views > Realtime Profiling Java.

Entenda o comportamento do cluster JVM ao longo do tempo

A visualização da linha do tempo do cluster JVM mostra o comportamento da JVM em todo o cluster. Este cronograma permite resolução de problemas e detecção de problemas mais rápida; por exemplo, de relance você pode ver:

  • Como uma implantação recente afetou o restante do cluster JVM
  • Quando uma JVM foi reiniciada
  • Como uma instância individual foi afetada por seu vizinho barulhento

Para facilitar a resolução de problemas, você precisa ver as características de tempo de execução de alta fidelidade do seu código em execução na JVM e precisa desses dados em tempo real.

New Relic Java Flight Recorder (JFR) UI

one.newrelic.com > All capabilities > APM & Services > (select service) > Realtime Profiling Java: a visualização da linha do tempo do cluster JVM mostra o comportamento da JVM no cluster.

Cada linha da linha do tempo representa uma JVM específica ao longo do tempo. Dentro de cada linha, uma caixa representa um período de 5 minutos da vida daquela JVM. Do menos grave ao mais grave, os semáforos amarelo, laranja e vermelho indicam comportamento anômalo para uma JVM, para que você possa detalhar essa instância e o período de tempo correto ao investigar erros ou outros problemas de desempenho.

How JVM health is measured

Selecione How is JVM health determined? para obter uma análise detalhada de como a integridade da JVM é calculada.

Detalhes da JVM

Para localizar a página de detalhes da JVM, acesse: one.newrelic.com > All capabilities > APM & Services > (select service) > Realtime Profiling Java > (select JVM).

O painel de detalhes de cada JVM fornece diversas visualizações críticas:

  • Porcentagem de uso da CPU do usuário
  • Porcentagem de uso da CPU da máquina
  • Tamanhos de pilha
  • Duração da coleta de lixo
  • Pausa mais longa para coleta de lixo
  • Utilização da CPU do thread do usuário
  • Utilização da CPU do thread do sistema
  • Alocação de objetos pequenos por thread
  • Alocação de objetos grandes por thread
  • Leitura de rede por thread
  • Gravação de rede por thread
  • Tamanho de alocação de buffer por thread
  • Alocação total de threads
  • Alocação total de objetos por thread
  • Metaespaço

Identifique caminhos de código que consomem muitos recursos com gráficos em degradê

Importante

O recurso de gráfico em degradê é compatível apenas com o cenário de uso do serviço JFR do agente Java da New Relic .

Um "gráfico em chamas" é uma forma de visualizar a árvore de chamadas. Cada bloco no gráfico representa uma função. Quanto mais tempo de CPU e recursos de memória um método consome, maior será o bloco.

Use gráficos em degradê para identificar as classes e métodos Java que são executados com mais frequência no código do seu aplicativo. Ao usar gráficos em degradê para otimizar os pontos de acesso em seu código, você pode reduzir o consumo de recursos e aumentar o desempenho geral do seu aplicativo.

Aqui estão alguns detalhes sobre as cores do gráfico em chama:

  • Gradiente de cinza: aplicamos o gradiente de cinza aos métodos de um pacote Java SE. As contagens de chamadas mais baixas têm tons mais claros, mudando gradualmente para tons mais escuros à medida que a contagem de chamadas aumenta.
  • Gradiente amarelo-laranja: Aplicamos o gradiente amarelo-laranja a métodos de outras bibliotecas. As contagens de chamadas mais baixas têm mais cores amarelas, mudando gradualmente para cores mais laranja à medida que a contagem de chamadas aumenta.
Screenshot of New Relic Java flame graph.

one.newrelic.com > APM & Services > (select service) > Realtime Profiling Java > (select JVM): você pode ver detalhes de cada JVM, incluindo gráficos em degradê.

Copyright © 2024 New Relic Inc.

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