Dinamikus naplózószint beállítása Java-alkalmazások hibaelhárításához az Azure Container Appsben (előzetes verzió)
Az Azure Container Apps platform egy beépített diagnosztikai eszközt kínál kizárólag Java-fejlesztők számára, hogy könnyebben és hatékonyabban tudják hibakeresést és hibaelhárítást végezni az Azure Container Appsen futó Java-alkalmazásaikban. Az egyik legfontosabb funkció a dinamikus naplózási szint módosítása, amely lehetővé teszi az alapértelmezés szerint rejtett naplóadatok elérését. Ha engedélyezve van, a rendszer kódmódosítások nélkül gyűjti össze a naplóadatokat, vagy arra kényszeríti, hogy indítsa újra az alkalmazást a naplószintek módosításakor.
Az első lépések előtt frissítenie kell az Azure Container Apps-bővítményt az Azure CLI-ben a 0.3.51-es vagy újabb verzióra.
az extension update --name containerapp
Feljegyzés
Ez a funkció kompatibilis a Java 8-on vagy újabb verziókon futó alkalmazásokkal.
JVM-diagnosztika engedélyezése Java-alkalmazásokhoz
A Java diagnosztikai eszköz használata előtt engedélyeznie kell a Java Virtuális gép (JVM) diagnosztikát az Azure Container Appshez. Ez a lépés lehetővé teszi a Java diagnosztikai funkcióit, ha egy speciális diagnosztikai ügynököt injektál az alkalmazásba. Előfordulhat, hogy az alkalmazás a folyamat során újraindul.
A diagnosztikai eszközök előnyeinek kihasználásához létrehozhat egy új tárolóalkalmazást, amely engedélyezve van, vagy frissíthet egy meglévő tárolóalkalmazást.
Ha új tárolóalkalmazást szeretne létrehozni, amelyen engedélyezve van a JVM-diagnosztika, használja a következő parancsot:
az containerapp create --enable-java-agent \
--environment <ENVIRONMENT_NAME> \
--resource-group <RESOURCE_GROUP> \
--name <CONTAINER_APP_NAME>
Meglévő tárolóalkalmazás frissítéséhez használja a következő parancsot:
az containerapp update --enable-java-agent \
--resource-group <RESOURCE_GROUP> \
--name <CONTAINER_APP_NAME>
Futásidejű naplózók szintjének módosítása
A JVM-diagnosztika engedélyezése után a futó Java-alkalmazásban anélkül módosíthatja a futtatókörnyezeti naplók szintjét, hogy újra kellene indítania az alkalmazást.
Az alábbi minta a naplózó nevét org.springframework.boot
használja a naplószinttel info
. Ügyeljen arra, hogy ezeket az értékeket úgy módosítsa, hogy azok megfeleljenek a saját naplózó nevének és szintjének.
Az alábbi paranccsal módosíthatja egy adott naplózó naplószintjeit:
az containerapp java logger set \
--logger-name "org.springframework.boot" \
--logger-level "info"
--resource-group <RESOURCE_GROUP> \
--name <CONTAINER_APP_NAME>
A naplózási szint módosítása akár két percet is igénybe vehet. Ha elkészült, ellenőrizheti az alkalmazásnaplókat a naplóstreamekből vagy más naplóbeállításokból.
Támogatott Java-naplózási keretrendszerek
A következő Java-naplózási keretrendszerek támogatottak:
- Log4j2 (csak 2.*- verzió)
- Visszavétel
- jboss-logging
A különböző naplózási keretrendszerek által támogatott naplószintek
A különböző naplózási keretrendszerek különböző naplózási szinteket támogatnak. A JVM diagnosztikai platformon egyes keretrendszerek jobban támogatottak, mint mások. A naplózási szintek módosítása előtt győződjön meg arról, hogy a keretrendszer és a platform támogatja a használt naplószinteket.
Váz | KI | FATÁLIS | Hiba | FIGYELMEZTET | INFÓ | HIBAKERESÉS | NYOMKÖVETÉSI |
---|---|---|---|---|---|---|---|
Log4j2 | Igen | Igen | Igen | Igen | Igen | Igen | Igen |
Visszavétel | Igen | Nem | Igen | Igen | Igen | Igen | Igen |
jboss-logging | Nem | Igen | Igen | Igen | Igen | Igen | Igen |
Peron | Igen | Nem | Igen | Igen | Igen | Igen | Igen |
A naplószintek általános láthatósága
Naplószint | FATÁLIS | Hiba | FIGYELMEZTET | INFÓ | HIBAKERESÉS | NYOMKÖVETÉSI |
---|---|---|---|---|---|---|
KI | ||||||
FATÁLIS | Igen | |||||
HIBA | Igen | Igen | ||||
FIGYELMEZTET | Igen | Igen | Igen | |||
INFÓ | Igen | Igen | Igen | Igen | ||
DEBUG | Igen | Igen | Igen | Igen | Igen | |
NYOM | Igen | Igen | Igen | Igen | Igen | Igen |
Ha például a naplószintet INFO
állítja be, az alkalmazás a naplókat szinttel FATAL
, ERROR
, , WARN
, INFO
, és NEM nyomtatja ki a naplókat szinttel DEBUG
és TRACE
.