Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Platforma Azure Container Apps oferuje wbudowane narzędzie diagnostyczne przeznaczone wyłącznie dla deweloperów języka Java, które ułatwia debugowanie i rozwiązywanie problemów z aplikacjami Java uruchomionymi w usłudze Azure Container Apps w sposób łatwy i wydajny. Jedną z kluczowych funkcji jest dynamiczna zmiana poziomu rejestratora, która umożliwia dostęp do szczegółów dziennika, które są domyślnie ukryte. Po włączeniu informacje dziennika są zbierane bez modyfikacji kodu ani wymuszania ponownego uruchamiania aplikacji podczas zmieniania poziomów dziennika.
Przed rozpoczęciem należy sprawdzić rozszerzenie usługi Azure Container Apps w interfejsie wiersza polecenia platformy Azure:
az extension show --name containerapp
Jeśli rozszerzenie nie jest zainstalowane, zainstaluj je najpierw. Jeśli rozszerzenie usługi Azure Container Apps jest zainstalowane, powinno to być wersja 0.3.51 lub nowsza.
az extension add -n containerapp
Uwaga
Ta funkcja jest zgodna z aplikacjami uruchomionymi w środowisku Java 8 lub nowszych wersjach.
Włączanie diagnostyki JVM dla aplikacji Java
Przed użyciem narzędzia diagnostycznego Java należy najpierw włączyć diagnostykę maszyny wirtualnej Java (JVM) dla usługi Azure Container Apps. Ten krok umożliwia korzystanie z funkcji diagnostyki Języka Java przez wstrzyknięcie zaawansowanego agenta diagnostyki do aplikacji. Aplikacja może zostać uruchomiona ponownie podczas tego procesu.
Aby skorzystać z tych narzędzi diagnostycznych, możesz utworzyć nową aplikację kontenera z włączoną obsługą lub zaktualizować istniejącą aplikację kontenera.
Aby utworzyć nową aplikację kontenera z włączoną diagnostyką JVM, użyj następującego polecenia:
az containerapp create --enable-java-agent \
--environment <ENVIRONMENT_NAME> \
--resource-group <RESOURCE_GROUP> \
--name <CONTAINER_APP_NAME>
Aby zaktualizować istniejącą aplikację kontenera, użyj następującego polecenia:
az containerapp update --enable-java-agent \
--resource-group <RESOURCE_GROUP> \
--name <CONTAINER_APP_NAME>
Zmienianie poziomów rejestratora środowiska uruchomieniowego
Po włączeniu diagnostyki JVM można zmienić poziomy dziennika środowiska uruchomieniowego dla określonych rejestratorów w uruchomionej aplikacji Java bez konieczności ponownego uruchamiania aplikacji.
W poniższym przykładzie użyto nazwy org.springframework.boot rejestratora z poziomem infodziennika . Pamiętaj, aby zmienić te wartości tak, aby były zgodne z nazwą i poziomem rejestratora.
Użyj następującego polecenia, aby dostosować poziomy dziennika dla określonego rejestratora:
az containerapp java logger set \
--logger-name "org.springframework.boot" \
--logger-level "info" \
--resource-group <RESOURCE_GROUP> \
--name <CONTAINER_APP_NAME>
Zastosowanie zmiany poziomu rejestratora może potrwać do dwóch minut. Po zakończeniu możesz sprawdzić dzienniki aplikacji ze strumieni dzienników lub innych opcji dziennika.
Obsługiwane struktury rejestrowania języka Java
Obsługiwane są następujące struktury rejestrowania języka Java:
- Log4j2 (tylko wersja 2.*)
- Rejestrowanie zwrotne
- jboss-logging
Obsługiwane poziomy dzienników przez różne struktury rejestrowania
Różne struktury rejestrowania obsługują różne poziomy dzienników. Na platformie diagnostyki JVM niektóre struktury są lepiej obsługiwane niż inne. Przed zmianą poziomów rejestrowania upewnij się, że platforma i platforma obsługują używane poziomy dzienników.
| Struktura | WYŁ. | ŚMIERTELNY | BŁĄD | OSTRZEGAĆ | Informacje | DEBUGOWANIE | ŚLAD |
|---|---|---|---|---|---|---|---|
| Log4j2 | Tak | Tak | Tak | Tak | Tak | Tak | Tak |
| Rejestrowanie zwrotne | Tak | Nie | Tak | Tak | Tak | Tak | Tak |
| jboss-logging (narzędzie do rejestrowania zdarzeń w JBoss) | Nie | Tak | Tak | Tak | Tak | Tak | Tak |
| Platforma | Tak | Nie | Tak | Tak | Tak | Tak | Tak |
Ogólne widoczność poziomów dziennika
| Poziom dziennika | ŚMIERTELNY | BŁĄD | OSTRZEGAĆ | Informacje | DEBUGOWANIE | ŚLAD |
|---|---|---|---|---|---|---|
| OD | ||||||
| ŚMIERTELNY | Tak | |||||
| BŁĄD | Tak | Tak | ||||
| OSTRZEGAĆ | Tak | Tak | Tak | |||
| INFORMACJI | Tak | Tak | Tak | Tak | ||
| DEBUGOWAĆ | Tak | Tak | Tak | Tak | Tak | |
| ŚLAD | Tak | Tak | Tak | Tak | Tak | Tak |
Jeśli na przykład ustawisz poziom dziennika na INFO, aplikacja drukuje dzienniki z poziomem FATAL, ERROR, WARN, INFO, i nie wyświetla dzienników z poziomem DEBUG i TRACE.