Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Nota
Os planos Basic, Standarde Enterprise entraram em um período de aposentadoria em 17 de março de 2025. Para obter mais informações, consulte o anúncio de aposentadoria do Azure Spring Apps.
O plano de consumo padrão e o plano dedicado entraram em um período de desativação a 30 de setembro de 2024, com um encerramento completo até o final de março de 2025. Para obter mais informações, consulte Migrar consumo do plano Padrão e Dedicado do Azure Spring Apps para Azure Container Apps.
Este artigo aplica-se a:✅ Basic/Standard ✅ Enterprise
Este artigo descreve como gerar manualmente um heap dump ou um thread dump e como iniciar o Java Flight Recorder (JFR).
A solução de problemas eficaz é fundamental para garantir que você possa corrigir problemas em ambientes de produção e manter sua empresa on-line. O Azure Spring Apps fornece streaming e consulta de log de aplicativos, emissão de métricas avançadas, alertas, rastreamento distribuído e assim por diante. Contudo, quando recebe alertas sobre solicitações com alta latência, fuga de memória na heap da JVM ou alto uso da CPU, não há solução de última etapa. Por esse motivo, permitimos que (o/a) utilizador(a) gere manualmente um despejo de heap, um despejo de thread e inicie o JFR.
Pré-requisitos
- Uma instância de serviço do Azure Spring Apps implantada. Para começar, consulte Guia de início rápido: implantar seu primeiro aplicativo no Azure Spring Apps.
- Pelo menos um aplicativo já criado em sua instância de serviço.
- Seu próprio armazenamento persistente, conforme descrito em Como habilitar seu próprio armazenamento persistente no Azure Spring Apps. Esse armazenamento é usado para salvar os arquivos de diagnóstico gerados. Os caminhos fornecidos nos valores de parâmetro abaixo devem estar sob o caminho de montagem do armazenamento persistente vinculado ao seu aplicativo. Se pretender usar um caminho dentro do caminho de montagem, certifique-se de criar o subcaminho com antecedência.
Gerar um despejo de pilha
Utilize o seguinte comando para gerar uma exportação de heap da sua aplicação no Azure Spring Apps.
az spring app deployment generate-heap-dump \
--resource-group <resource-group-name> \
--service <Azure-Spring-Apps-instance-name> \
--app <app-name> \
--deployment <deployment-name> \
--app-instance <app-instance name> \
--file-path <your-target-file-path-in-your-persistent-storage-mount-path>
Gerar um despejo de thread
Use o comando a seguir para gerar um despejo de thread do seu aplicativo no Azure Spring Apps.
az spring app deployment generate-thread-dump \
--resource-group <resource-group-name> \
--service <Azure-Spring-Apps-instance-name> \
--app <app-name> \
--deployment <deployment-name> \
--app-instance <app-instance name> \
--file-path <your-target-file-path-in-your-persistent-storage-mount-path>
Iniciar JFR
Use o comando a seguir para iniciar o JFR para seu aplicativo no Azure Spring Apps.
az spring app deployment start-jfr \
--resource-group <resource-group-name> \
--service <Azure-Spring-Apps-instance-name> \
--app <app-name> \
--deployment <deployment-name> \
--app-instance <app-instance name> \
--file-path <your-target-file-path-in-your-persistent-storage-mount-path> \
--duration <duration-of-JFR>
O valor padrão para duration
é 60 segundos.
Gerar um dump usando o portal do Azure
Use as etapas a seguir para gerar um despejo de heap ou thread do seu aplicativo no Azure Spring Apps.
No portal do Azure, navegue até o aplicativo de destino e selecione Solução de problemas.
No painel Solução de problemas, selecione a instância do aplicativo e o tipo de despejo que você deseja coletar.
No campo Caminho do ficheiro, especifique o caminho de montagem do armazenamento persistente.
Selecione Coletar.
Obtenha os seus ficheiros de diagnóstico
Navegue até o caminho do arquivo de destino em seu armazenamento persistente e encontre seu dump/JFR. A partir daí, você pode baixá-los para sua máquina local. O nome do ficheiro gerado será semelhante a <app-instance>heapdump<time-stamp>.hprof para o heap dump, <app-instance>threaddump<time-stamp>.txt para o thread dump, e <app-instance>JFR<time-stamp>.jfr para o ficheiro JFR.