Jak monitorować aplikacje Spring Boot przy użyciu nowego agenta Java Relic

Uwaga

Plany Basic, Standardi Enterprise weszły w okres wycofywania 17 marca 2025 r. Aby uzyskać więcej informacji, zobacz ogłoszenie o wycofaniu usługi Azure Spring Apps.

Ten artykuł dotyczy:✅ Podstawowa/Standardowa ❎ Enterprise

W tym artykule pokazano, jak monitorować aplikacje Spring Boot w usłudze Azure Spring Apps przy użyciu nowego agenta Java Relic.

Za pomocą nowego agenta Java Relic można wykonywać następujące czynności:

  • Wykorzystaj agenta Java New Relic.
  • Skonfiguruj nowego agenta Java Relic przy użyciu zmiennych środowiskowych.
  • Sprawdź wszystkie dane monitorowania na pulpicie nawigacyjnym New Relic.

W poniższym wideo opisano, jak aktywować oraz monitorować aplikacje Spring Boot w usłudze Azure Spring Apps za pomocą New Relic One.


Wymagania wstępne

Aktywuj agenta New Relic dla Java in-process

Aby uzyskać dostęp do agenta, wykonaj następującą procedurę:

  1. Utwórz instancję Azure Spring Apps.

  2. Utwórz aplikację.

    az spring app create \
        --resource-group <resource-group-name> \
        --service <Azure-Spring-Apps-instance-name> \
        --name <app-name> \
        --is-public true \
    
  3. Utwórz wdrożenie za pomocą nowego agenta Relic i zmiennych środowiskowych.

    az spring app deploy \
        --resource-group <resource-group-name> \
        --service <Azure-Spring-Apps-instance-name> \
        --name <app-name> \
        --artifact-path app.jar \
        --jvm-options="-javaagent:/opt/agents/newrelic/java/newrelic-agent.jar" \
        --env NEW_RELIC_APP_NAME=appName \
              NEW_RELIC_LICENSE_KEY=newRelicLicenseKey
    

Usługa Azure Spring Apps preinstaluje nowego agenta Java Relic do /opt/agents/newrelic/java/newrelic-agent.jar. Klienci mogą aktywować agenta z opcji JVM aplikacji i konfigurować agenta przy użyciu zmiennych środowiskowych nowego agenta Java Relic.

Azure Portal

Ten agent można również aktywować w witrynie Azure Portal, wykonując poniższą procedurę.

  1. W wystąpieniu usługi Azure Spring Apps wybierz pozycję Aplikacje w okienku nawigacji.

    Zrzut ekranu portalu Azure przedstawiający stronę aplikacje dla wystąpienia usługi Azure Spring Apps.

  2. Wybierz aplikację z listy, a następnie wybierz pozycję Konfiguracja w okienku nawigacji.

  3. Użyj karty Ustawienia ogólne, aby zaktualizować wartości, takie jak opcje JVM.

    Zrzut ekranu witryny Azure Portal przedstawiający stronę Konfiguracja aplikacji z wybraną kartą Ustawienia ogólne.

  4. Wybierz pozycję Zmienne środowiskowe , aby dodać lub zaktualizować zmienne używane przez aplikację.

    Zrzut ekranu witryny Azure Portal przedstawiający stronę Konfiguracja aplikacji z wybraną kartą Zmienne środowiskowe.

  5. Wyświetl stronę Podsumowanie interfejsu API/bramy aplikacji z pulpitu nawigacyjnego New Relic.

    Zrzut ekranu przedstawiający stronę podsumowania usługi API Gateway na pulpicie nawigacyjnym New Relic.

  6. Wyświetl stronę Podsumowanie usługi klientów aplikacji na pulpicie nawigacyjnym New Relic.

    Zrzut ekranu pulpitu nawigacyjnego New Relic przedstawiający stronę Obsługi Klienta.

  7. Wyświetl stronę Mapa usług na pulpicie nawigacyjnym New Relic.

    Zrzut ekranu pulpitu nawigacyjnego New Relic przedstawiający stronę Mapa usługi.

  8. Wyświetl stronę JVM-ów aplikacji z pulpitu nawigacyjnego New Relic.

    Zrzut ekranu przedstawiający pulpit nawigacyjny New Relic przedstawiający stronę JVM.

  9. Wyświetl profil aplikacji na pulpicie nawigacyjnym New Relic.

    Zrzut ekranu dashboardu New Relic pokazujący stronę Profil aplikacji.

Automatyzacja dostarczania zasobów

Możesz również uruchomić potok automatyzacji aprowizacji przy użyciu narzędzia Terraform, Bicep lub szablonu usługi Azure Resource Manager (szablon usługi ARM). Ten potok może zapewnić całkowicie bezobsługowe doświadczenie z instrumentacją i monitorowaniem dowolnych nowych aplikacji, które tworzysz i wdrażasz.

Automatyzowanie udostępniania zasobów przy użyciu Terraform

Aby skonfigurować zmienne środowiskowe w szablonie Terraform, dodaj do szablonu następujący kod, zastępując pola <...> własnymi wartościami. Aby uzyskać więcej informacji, zobacz Manages an Active Azure Spring Apps Deployment (Zarządzanie wdrożeniem usługi Azure Spring Apps).

resource "azurerm_spring_cloud_java_deployment" "example" {
  ...
  jvm_options = "-javaagent:/opt/agents/newrelic/java/newrelic-agent.jar"
  ...
    environment_variables = {
      "NEW_RELIC_APP_NAME": "<app-name>",
      "NEW_RELIC_LICENSE_KEY": "<new-relic-license-key>"
  }
}

Automatyzowanie aprowizacji przy użyciu pliku Bicep

Aby skonfigurować zmienne środowiskowe w pliku Bicep, dodaj następujący kod do szablonu, zastępując <...> symbole zastępcze własnymi wartościami. Aby uzyskać więcej informacji, zobacz Microsoft.AppPlatform Spring/apps/deployments.

deploymentSettings: {
  environmentVariables: {
    NEW_RELIC_APP_NAME : '<app-name>',
    NEW_RELIC_LICENSE_KEY : '<new-relic-license-key>'
  },
  jvmOptions: '-javaagent:/opt/agents/newrelic/java/newrelic-agent.jar',
  ...
}

Automatyzacja udostępniania przy użyciu szablonu ARM

Aby skonfigurować zmienne środowiskowe w szablonie ARM, dodaj następujący kod do szablonu, zastępując symbole zastępcze <...> własnymi wartościami. Aby uzyskać więcej informacji, zobacz Microsoft.AppPlatform Spring/apps/deployments.

"deploymentSettings": {
  "environmentVariables": {
    "NEW_RELIC_APP_NAME" : "<app-name>",
    "NEW_RELIC_LICENSE_KEY" : "<new-relic-license-key>"
  },
  "jvmOptions": "-javaagent:/opt/agents/newrelic/java/newrelic-agent.jar",
  ...
}

Przekazywanie dzienników aplikacji do New Relic

Agent New Relic może zbierać dzienniki aplikacji bezpośrednio z Twoich aplikacji i przekazywać je do New Relic. Aby uzyskać więcej informacji, zobacz Przekazywanie dzienników do New Relic i dzienniki APM w kontekście.

Wyświetlanie dzienników agenta Java New Relic

Domyślnie usługa Azure Spring Apps wyświetla dzienniki nowego agenta Java Relic na STDOUT. Dzienniki systemowe są mieszane z dziennikami aplikacji. Wersję jawnego agenta można znaleźć w dziennikach aplikacji.

Dzienniki nowego agenta Relic można również pobrać z następujących lokalizacji:

  • Dzienniki usługi Azure Spring Apps
  • Azure Spring Apps - Analiza Aplikacji
  • Azure Spring Apps LogStream

Aby skonfigurować rejestrowanie nowego agenta, można użyć niektórych zmiennych środowiskowych udostępnianych przez New Relic, na przykład NEW_RELIC_LOG_LEVEL w celu kontrolowania poziomu dzienników. Aby uzyskać więcej informacji, zobacz konfigurację logowania New Relic.

Uwaga

Nie używaj finer ani finest, chyba że poprosi o to pomoc techniczna New Relic. Te poziomy mogą generować nadmierne obciążenie. W większości sytuacji użyj info.

Uwaga

Zdecydowanie zalecamy, aby nie zastąpić domyślnego zachowania rejestrowania udostępnianego przez usługę Azure Spring Apps for New Relic. Jeśli tak, opisane wcześniej scenariusze rejestrowania są blokowane, a pliki dziennika mogą zostać utracone. Na przykład nie należy przekazywać następujących zmiennych środowiskowych do aplikacji. Pliki dziennika mogą zostać utracone po ponownym uruchomieniu lub ponownym uruchomieniu aplikacji.

  • NEW_RELIC_LOG
  • NEW_RELIC_LOG_FILE_PATH

Nowa aktualizacja/uaktualnianie agenta Java Relic

Agent Java firmy New Relic regularnie aktualizuje i uaktualnia JDK. Aktualizacja/uaktualnianie agenta może mieć wpływ na następujące scenariusze.

  • Istniejące aplikacje korzystające z agenta Języka Java New Relic przed aktualizacją/uaktualnieniem pozostają niezmienione.
  • Istniejące aplikacje korzystające z agenta Języka Java New Relic przed aktualizacją/uaktualnieniem wymagają ponownego uruchomienia lub ponownego wdrożenia w celu zaangażowania nowej wersji nowego agenta Języka Java Relic.
  • Nowe aplikacje utworzone po aktualizacji/uaktualnieniu używają nowej wersji nowego agenta Java Relic.

Konfiguracja ruchu wychodzącego instancji iniekcji Vnet

W przypadku iniekcji VNet w usłudze Azure Spring Apps należy upewnić się, że ruch wychodzący jest poprawnie skonfigurowany dla agenta New Relic dla Javy. Aby uzyskać więcej informacji, zobacz Sieci New Relic.

Następne kroki

Korzystanie z agenta wewnątrzprocesowego Java usługi Application Insights w usłudze Azure Spring Apps