Mengumpulkan Metrik Pemutus Arus Listrik Spring Cloud Resilience4J dengan Micrometer (Pratinjau)
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: ✔️ Basic/Standard ✔️ Enterprise
Artikel ini menjelaskan cara mengumpulkan Metrik Pemutus Arus Listrik Spring Cloud Resilience4j dengan agen dalam proses Java Application Insights. Dengan fitur ini, Anda dapat memantau metrik pemutus sirkuit Resilience4j dari Application Insights dengan Micrometer.
Demo spring-cloud-circuit-breaker-demo menunjukkan cara kerja pemantauan.
Prasyarat
- Instal Git, Maven, dan Java, jika belum diinstal pada komputer pengembangan.
Membangun dan menyebarkan aplikasi
Gunakan langkah-langkah berikut untuk membangun dan menyebarkan aplikasi sampel.
Gunakan perintah berikut untuk mengkloning dan membangun repositori demo:
git clone https://github.com/spring-cloud-samples/spring-cloud-circuitbreaker-demo.git cd spring-cloud-circuitbreaker-demo && mvn clean package -DskipTests
Gunakan perintah berikut ini untuk membuat instans layanan Azure Spring Apps:
az spring create \ --resource-group ${resource-group-name} \ --name ${Azure-Spring-Apps-instance-name}
Gunakan perintah berikut untuk membuat aplikasi dengan titik akhir:
az spring app create \ --resource-group ${resource-group-name} \ --service ${Azure-Spring-Apps-instance-name} \ --name resilience4j \ --assign-endpoint az spring app create \ --resource-group ${resource-group-name} \ --service ${Azure-Spring-Apps-instance-name} \ --name reactive-resilience4j \ --assign-endpoint
Gunakan perintah berikut untuk menyebarkan aplikasi:
az spring app deploy \ --resource-group ${resource-group-name} \ --service ${Azure-Spring-Apps-instance-name} \ --name resilience4j \ --env resilience4j.circuitbreaker.instances.backendA.registerHealthIndicator=true \ --artifact-path ./spring-cloud-circuitbreaker-demo-resilience4j/target/spring-cloud-circuitbreaker-demo-resilience4j-0.0.1-SNAPSHOT.jar az spring app deploy \ --resource-group ${resource-group-name} \ --service ${Azure-Spring-Apps-instance-name} \ --name reactive-resilience4j \ --env resilience4j.circuitbreaker.instances.backendA.registerHealthIndicator=true \ --artifact-path ./spring-cloud-circuitbreaker-demo-reactive-resilience4j/target/spring-cloud-circuitbreaker-demo-reactive-resilience4j-0.0.1-SNAPSHOT.jar
Gunakan perintah berikut ini untuk membuat instans layanan Azure Spring Apps:
Catatan
Jika langganan Anda belum pernah digunakan untuk membuat instans paket Enterprise Azure Spring Apps, Anda harus menjalankan perintah berikut:
az term accept \ --publisher vmware-inc --product azure-spring-cloud-vmware-tanzu-2 --plan asa-ent-hr-mtr
az spring create \ --resource-group ${resource-group-name} \ --name ${Azure-Spring-Apps-instance-name} \ --sku Enterprise
Gunakan perintah berikut untuk membuat aplikasi dengan titik akhir:
az spring app create \ --resource-group ${resource-group-name} \ --service ${Azure-Spring-Apps-instance-name} \ --name resilience4j \ --assign-endpoint az spring app create \ --resource-group ${resource-group-name} \ --service ${Azure-Spring-Apps-instance-name} \ --name reactive-resilience4j \ --assign-endpoint
Gunakan perintah berikut untuk menyebarkan aplikasi:
az spring app deploy \ --resource-group ${resource-group-name} \ --service ${Azure-Spring-Apps-instance-name} \ --name resilience4j \ --env resilience4j.circuitbreaker.instances.backendA.registerHealthIndicator=true \ --artifact-path ./spring-cloud-circuitbreaker-demo-resilience4j/target/spring-cloud-circuitbreaker-demo-resilience4j-0.0.1-SNAPSHOT.jar az spring app deploy \ --resource-group ${resource-group-name} \ --service ${Azure-Spring-Apps-instance-name} \ --name reactive-resilience4j \ --env resilience4j.circuitbreaker.instances.backendA.registerHealthIndicator=true \ --artifact-path ./spring-cloud-circuitbreaker-demo-reactive-resilience4j/target/spring-cloud-circuitbreaker-demo-reactive-resilience4j-0.0.1-SNAPSHOT.jar
Catatan
Sertakan dependensi yang diperlukan untuk Resilience4j:
<dependency> <groupId>io.github.resilience4j</groupId> <artifactId>resilience4j-micrometer</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-circuitbreaker-resilience4j</artifactId> </dependency>
Kode Anda harus menggunakan
CircuitBreakerFactory
API, yang diimplementasikan sebagaibean
yang dibuat secara otomatis saat Anda menyertakan starter Spring Cloud Circuit Breaker. Untuk informasi selengkapnya, lihat Spring Cloud Circuit Breaker.Dua dependensi berikut memiliki konflik dengan paket Resilient4j. Pastikan Anda tidak menyertakannya.
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-sleuth</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-zipkin</artifactId> </dependency>
Buka URL yang disediakan oleh aplikasi gateway dan akses titik akhir dari spring-cloud-circuit-breaker-demo sebagai berikut:
/get
/delay/{seconds}
/fluxdelay/{seconds}
Temukan Metrik Resilence4j di portal Azure
Di instans Azure Spring Apps Anda, pilih Application Insights di panel navigasi lalu pilih Application Insights di halaman.
Catatan
Jika Anda tidak mengaktifkan Application Insights, Anda dapat mengaktifkan agen Java In-Process. Untuk informasi selengkapnya, lihat bagian Mengelola Application Insights menggunakan portal Azure dari Menggunakan Application Insights Java In-Process Agent di Azure Spring Apps.
Aktifkan pengumpulan dimensi untuk metrik resilience4j. Untuk informasi selengkapnya, lihat bagian Dimensi metrik kustom dan preaggregasi metrik berbasis log dan preaggregasi di Application Insights.
Pilih Metrik di panel navigasi. Halaman Metrik menyediakan menu dropdown dan opsi untuk menentukan bagan dalam prosedur ini. Untuk semua bagan, atur Namespace Metrik ke azure.applicationinsights.
Atur Metrik ke resilience4j_circuitbreaker_buffered_calls, lalu atur Agregasi ke Rata-rata.
Atur Metrik ke resilience4j_circuitbreaker_calls, lalu atur Agregasi ke Rata-rata.
Atur Metrik ke resilience4j_circuitbreaker_calls, lalu atur Agregasi ke Rata-rata. Pilih Tambahkan filter dan atur Nama ke Penundaan.
Atur Metrik ke resilience4j_circuitbreaker_calls, lalu atur Agregasi ke Rata-rata. Pilih Terapkan pemisahan dan atur Pisahkan menurut ke jenis.
Atur Metrik ke resilience4j_circuitbreaker_calls, lalu atur Agregasi ke Rata-rata. Pilih Tambahkan metrik dan atur Metrik ke resilience4j_circuitbreaker_buffered_calls, lalu atur Agregasi ke Rata-rata. Pilih Tambahkan metrik lagi dan atur Metrik ke resilience4j_circuitbreaker_slow_calls, lalu atur Agregasi diatur ke Rata-rata.
Di instans Azure Spring Apps Anda, pilih Application Insights di panel navigasi lalu pilih Application Insights default di halaman.
Catatan
Jika tidak ada Application Insights default yang tersedia, Anda dapat mengaktifkan agen Java In-Process. Untuk informasi selengkapnya, lihat bagian Mengelola Application Insights menggunakan portal Azure dari Menggunakan Application Insights Java In-Process Agent di Azure Spring Apps.
Aktifkan pengumpulan dimensi untuk metrik resilience4j. Untuk informasi selengkapnya, lihat bagian Dimensi metrik kustom dan preaggregasi metrik berbasis log dan preaggregasi di Application Insights.
Pilih Metrik di panel navigasi. Halaman Metrik menyediakan menu dropdown dan opsi untuk menentukan bagan dalam prosedur ini. Untuk semua bagan, atur Namespace Metrik ke azure.applicationinsights.
Atur Metrik ke resilience4j_circuitbreaker_buffered_calls, lalu atur Agregasi ke Rata-rata.
Atur Metrik ke resilience4j_circuitbreaker_calls, lalu atur Agregasi ke Rata-rata.
Atur Metrik ke resilience4j_circuitbreaker_calls, lalu atur Agregasi ke Rata-rata. Pilih Tambahkan filter dan atur Nama ke Penundaan.
Atur Metrik ke resilience4j_circuitbreaker_calls, lalu atur Agregasi ke Rata-rata. Pilih Terapkan pemisahan dan atur Pisahkan menurut ke jenis.
Atur Metrik ke resilience4j_circuitbreaker_calls, lalu atur Agregasi ke Rata-rata. Pilih Tambahkan metrik dan atur Metrik ke resilience4j_circuitbreaker_buffered_calls, lalu atur Agregasi ke Rata-rata. Pilih Tambahkan metrik lagi dan atur Metrik ke resilience4j_circuitbreaker_slow_calls, lalu atur Agregasi diatur ke Rata-rata.
Langkah berikutnya
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk