Java Diagnostic Tool (diag4j) på Azure Kubernetes Service (AKS)
Den här artikeln innehåller en översikt över Java Diagnostic Tool (diag4j) på Azure Kubernetes Service (AKS). Verktyget diag4j är en lätt, icke-påträngande övervaknings- och diagnostiklösning för Java-program som körs i Azure Kubernetes Service.
Viktiga fördelar
Verktyget diag4j ger följande viktiga fördelar:
- Enkelt och icke-invasivt: genom att använda Spring Boot Admin (SBA) och Java Attach Agent är verktyget resurseffektivt och kräver inte djupgående ändringar i program.
- Automatisk Kubernetes-integration: verktyget upptäcker automatiskt poddar med exponerade aktiveringsslutpunkter och listar dem på SBA-instrumentbrädan.
- Realtidsmått och diagnostik: Verktyget visar programmått i realtid, skräpinsamlingsstatus (GC) och miljövariabler. Du kan också justera loggnivåerna dynamiskt för att få djupare insikter om specifika problem.
- Avancerad diagnostik: verktyget erbjuder förbättrade diagnostikfunktioner, till exempel stackspårningsanalys, visning av lokala variabler, generering av heapdumpar och tråddumpar och att infoga loggar dynamiskt för felsökning.
- IDE-kompatibilitet: verktyget integreras med IDE:er för att aktivera felsökning utan att behöva återskapa eller distribuera om programmet, vilket möjliggör effektiv felsökning.
Arkitektur
Verktyget diag4j består av följande komponenter:
- Spring Boot Admin-servern, som har en skrivskyddad roll inom sitt namnområde för att automatiskt identifiera och övervaka poddar som exponerar aktuatorslutpunkter.
- Java Attach Agent, som är en enkel Java-agent som ansluter till javaprocesser som körs, vilket möjliggör diagnostikfunktioner utan att starta om programmet.
För att upprätthålla säkerheten under den aktuella milstolpen exponeras inte dessa komponenter offentligt. Du kan komma åt verktyget via kommandot kubectl port-forward
.