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

Uwaga

Azure Spring Apps to nowa nazwa usługi Azure Spring Cloud. Mimo że usługa ma nową nazwę, stara nazwa będzie widoczna w niektórych miejscach przez pewien czas, ponieważ pracujemy nad aktualizowaniem zasobów, takich jak zrzuty ekranu, filmy wideo i diagramy.

Ten artykuł dotyczy: ✔️ Użycie standardowe i dedykowane (wersja zapoznawcza) ✔️ w warstwie 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:

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

W poniższym filmie wideo opisano sposób aktywowania i monitorowania aplikacji Spring Boot w usłudze Azure Spring Apps przy użyciu nowego relic one.


Wymagania wstępne

Aktywowanie nowego relic języka Java w agencie przetwarzania

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

  1. Utwórz wystąpienie usługi 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.

    Screenshot of the Azure portal showing the Apps page for an Azure Spring Apps instance.

  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.

    Screenshot of the Azure portal showing the Configuration page for an app with the General settings tab selected.

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

    Screenshot of the Azure portal showing the Configuration page for an app with the Environment variables tab selected.

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

    Screenshot of the New Relic dashboard showing the API Gateway summary page.

  6. Wyświetl stronę podsumowanie usługi klienci aplikacji na pulpicie nawigacyjnym New Relic.

    Screenshot of the New Relic dashboard showing the Customers Service page.

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

    Screenshot of the New Relic dashboard showing the Service Map page.

  8. Wyświetl stronę maszyn wirtualnych JVM aplikacji z poziomu nowego pulpitu nawigacyjnego Relic.

    Screenshot of the New Relic dashboard showing the JVM page.

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

    Screenshot of the New Relic dashboard showing the Application Profile page.

Automatyzowanie aprowizacji

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ć pełne praktyczne środowisko instrumentacji i monitorowania wszelkich nowych aplikacji, które tworzysz i wdrażasz.

Automatyzowanie aprowizacji przy użyciu narzędzia Terraform

Aby skonfigurować zmienne środowiskowe w szablonie programu Terraform, dodaj następujący kod do szablonu, zastępując <symbole zastępcze ...> 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',
  ...
}

Automatyzowanie aprowizacji przy użyciu szablonu usługi ARM

Aby skonfigurować zmienne środowiskowe w szablonie usługi 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 nowej relic

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

Wyświetlanie nowych dzienników agenta Java Relic

Domyślnie usługa Azure Spring Apps wyświetla dzienniki nowego agenta Java Relic na STDOUT. Dzienniki 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
  • Szczegółowe informacje aplikacji Usługi Azure Spring Apps
  • Azure Spring Apps LogStream

Aby skonfigurować rejestrowanie nowego agenta, na przykład w celu kontrolowania poziomu dzienników, NEW_RELIC_LOG_LEVEL można użyć niektórych zmiennych środowiskowych udostępnianych przez new Relic. Aby uzyskać więcej informacji, zobacz New Relic logging configuration (Nowa konfiguracja rejestrowania relic).

Uwaga

Nie używaj finer polecenia lub finest , chyba że nowa pomoc techniczna relic prosi o to. Te poziomy rejestrowania mogą generować nadmierne obciążenie. W większości sytuacji użyj polecenia 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

Regularnie aktualizuj/uaktualnij zestaw JDK nowego agenta Java Relic. 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 wystąpienia iniekcji sieci wirtualnej

W przypadku wystąpienia iniekcji sieci wirtualnej usługi Azure Spring Apps należy upewnić się, że ruch wychodzący jest poprawnie skonfigurowany dla nowego agenta Java Relic. Aby uzyskać więcej informacji, zobacz Sieci nowego relikwii.

Następne kroki

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