Cara memantau aplikasi Spring Boot dengan menggunakan agen New Java Relic

Catatan

Azure Spring Apps adalah nama baru untuk layanan Azure Spring Cloud. Meskipun layanan memiliki nama baru, Anda akan melihat nama lama di beberapa tempat untuk sementara saat kami berupaya memperbarui aset seperti cuplikan layar, video, dan diagram.

Artikel ini berlaku untuk: ✔️ Konsumsi standar dan khusus (Pratinjau) ✔️ Basic/Standard ❌ Enterprise

Artikel ini memperlihatkan kepada Anda cara memantau aplikasi Spring Boot di Azure Spring Apps dengan agen New Relic Java.

Dengan agen New Relic Java, Anda dapat:

  • Menggunakan agen New Relic Java.
  • Mengonfigurasi agen New Relic Java menggunakan variabel lingkungan.
  • Memeriksa semua data pemantauan dari dasbor New Relic.

Video berikut menjelaskan cara mengaktifkan dan memantau aplikasi Spring Boot di Azure Spring Apps menggunakan New Relic One.


Prasyarat

Mengaktifkan New Relic Java dalam agen proses

Gunakan prosedur berikut untuk mengakses agen:

  1. Buat instans Azure Spring Apps.

  2. Buat aplikasi.

    az spring app create \
        --resource-group <resource-group-name> \
        --service <Azure-Spring-Apps-instance-name> \
        --name <app-name> \
        --is-public true \
    
  3. Buat penyebaran dengan agen New Relic dan variabel Lingkungan.

    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
    

Azure Spring Apps telah menginstal agen New Relic Java ke /opt/agents/newrelic/java/newrelic-agent.jar. Pelanggan dapat mengaktifkan agen dari opsi JVM aplikasi, dan mengonfigurasi agen menggunakan variabel lingkungan agen New Relic Java.

Portal Azure

Anda juga dapat mengaktifkan agen ini dari portal Azure dengan prosedur berikut.

  1. Di instans Azure Spring Apps Anda, pilih Aplikasi di panel navigasi.

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

  2. Pilih aplikasi dari daftar, lalu pilih Konfigurasi di panel navigasi.

  3. Gunakan tab Pengaturan umum untuk memperbarui nilai seperti opsi JVM.

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

  4. Pilih Variabel lingkungan untuk menambahkan atau memperbarui variabel yang digunakan oleh aplikasi Anda.

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

  5. Lihat halaman Ringkasan api/gateway aplikasi dari dasbor New Relic.

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

  6. Tampilkan halaman Ringkasan layanan pelanggan aplikasi dari dasbor New Relic.

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

  7. Tampilkan halaman Peta Layanan dari dasbor New Relic.

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

  8. Tampilkan halaman JVM aplikasi dari dasbor New Relic.

    Screenshot of the New Relic dashboard showing the JVM page.

  9. Tampilkan profil aplikasi dari dasbor New Relic.

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

Mengotomatiskan penyediaan

Anda juga dapat menjalankan alur otomatisasi provisi menggunakan Terraform, Bicep, atau templat Azure Resource Manager (templat ARM). Alur ini dapat memberikan pengalaman penyerahan yang lengkap untuk instrumen dan memantau setiap aplikasi baru yang Anda buat dan sebarkan.

Melakukan provisi otomatis dengan menggunakan Terraform

Untuk mengonfigurasi variabel lingkungan di template Terraform, tambahkan kode berikut ke template, ganti tempat penampung <...> dengan nilai Anda sendiri. Untuk informasi selengkapnya, lihat Mengelola Penyebaran Azure Spring Apps Aktif.

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>"
  }
}

Mengotomatiskan provisi menggunakan file Bicep

Untuk mengonfigurasi variabel lingkungan dalam file Bicep, tambahkan kode berikut ke templat, ganti <tempat penampung ...> dengan nilai Anda sendiri. Untuk informasi selengkapnya, lihat 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',
  ...
}

Melakukan provisi otomatis dengan menggunakan templat ARM

Untuk mengonfigurasi variabel lingkungan di template ARM, tambahkan kode berikut ke template, ganti tempat penampung <...> dengan nilai Anda sendiri. Untuk informasi selengkapnya, lihat 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",
  ...
}

Meneruskan log aplikasi ke New Relic

Agen New Relic dapat mengumpulkan log aplikasi langsung dari aplikasi Anda, dan meneruskannya ke New Relic. Untuk informasi selengkapnya, lihat Meneruskan log Anda ke log New Relic dan APM dalam konteks.

Menampilkan log New Relic Java Agent

Secara default, Azure Spring Apps mencetak log agen New Relic Java ke STDOUT. Log dicampur dengan log aplikasi. Anda dapat menemukan versi agen eksplisit dari log aplikasi.

Anda juga bisa mendapatkan log agen New Relic dari lokasi berikut:

  • Log Aplikasi Azure Spring
  • Application Insights Azure Spring Apps
  • Azure Spring Apps LogStream

Anda dapat menggunakan beberapa variabel lingkungan yang disediakan oleh New Relic untuk mengonfigurasi pengelogan Agen Baru, seperti, NEW_RELIC_LOG_LEVEL untuk mengontrol tingkat log. Untuk informasi selengkapnya, lihat Konfigurasi pengelogan New Relic.

Catatan

Jangan gunakan finer atau finest kecuali Dukungan New Relic meminta Anda untuk melakukan itu. Tingkat pengelogan ini dapat menghasilkan overhead yang berlebihan. Untuk sebagian besar situasi, gunakan info.

Perhatian

Kami sangat menyarankan agar Anda tidak mengambil alih perilaku default pengelogan yang disediakan oleh Azure Spring Apps untuk New Relic. Jika Anda melakukannya, skenario pengelogan yang dijelaskan sebelumnya diblokir, dan file log mungkin hilang. Misalnya, Anda tidak boleh meneruskan variabel lingkungan berikut ke aplikasi Anda. File log mungkin hilang setelah memulai ulang atau menyebarkan ulang aplikasi.

  • NEW_RELIC_LOG
  • NEW_RELIC_LOG_FILE_PATH

Pembaruan/peningkatan Agen New Relic Java

Agen New Relic Java memperbarui/meningkatkan JDK secara teratur. Pembaruan/peningkatan agen dapat memengaruhi skenario berikut.

  • Aplikasi yang ada yang menggunakan agen New Relic Java sebelum pembaruan/peningkatan tidak berubah.
  • Aplikasi yang sudah ada yang menggunakan agen New Relic Java sebelum pembaruan/peningkatan memerlukan mulai ulang atau menyebarkan ulang untuk mengaktifkan versi baru agen New Relic Java.
  • Aplikasi baru yang dibuat setelah pembaruan/peningkatan menggunakan versi baru agen New Relic Java.

Konfigurasi Lalu Lintas Keluar Instans Injeksi Vnet

Untuk instans injeksi vnet Aplikasi Azure Spring, Anda perlu memastikan lalu lintas keluar dikonfigurasi dengan benar untuk agen New Java Relic. Untuk mengetahui informasi selengkapnya, lihat Jaringan New Relic.

Langkah berikutnya

Menggunakan Agen Dalam Proses Java Application Insights di Azure Spring Apps