Azure yay bulutu 'nda yığın dökümünü, iş parçacığı dökümünü ve JFR 'yi el ile yakalama

Bu makale şu şekilde geçerlidir: ✔️ Java ❌ C #

Müşterilerin üretim ortamlarında sorunları zamanında çözmesi açısından kritik olan ve iş sorunlarını her zaman çevrimiçi olarak güvence altına alan etkili sorun giderme. Azure yay bulutu 'nda bugün, bu alandaki müşterilerimize yardımcı olmak için uygulama günlüğü akışı/sorgusu, zengin ölçüm yayma ve uyarılar, dağıtılmış izleme vb. zaten sağladık. Ancak, müşteriler yüksek gecikme süresi, JVM yığın sızıntısı veya yüksek CPU kullanımı hakkında uyarı alırken bunlar için son mil çözüm yoktur. Bu nedenle, el ile bir yığın dökümü oluşturma, iş parçacığı dökümü oluşturma veya JFR başlatma etkinliyoruz.

Önkoşullar

Bu alıştırmayı tamamlayabilmeniz için şunlar gerekir:

Müşteriler, bağlama yolu altında yol kullanmak istiyorsam, lütfen alt yolun zaten oluşturulduğundan emin olun.

Yığın dökümü oluşturma

Azure yay bulutu 'nda uygulamamız için bir yığın dökümü oluşturun.

   az spring-cloud app deployment generate-heap-dump -g <resource-group-name> -s <service-instance-name> --app <app-name> --deployment <deployment-name> --app-instance <app-instance name> --file-path <your-target-file-path-in-your-persistent-storage-mount-path>

İş parçacığı dökümü oluşturma

Azure yay bulutu 'nda uygulamamız iş parçacığı dökümünü oluşturun.

   az spring-cloud app deployment generate-thread-dump -g <resource-group-name> -s <service-instance-name> --app <app-name> --deployment <deployment-name> --app-instance <app-instance name> --file-path <your-target-file-path-in-your-persistent-storage-mount-path>

JFR 'yi Başlat

Azure yay bulutu 'nda uygulamamız için bir JFR başlatın.

   az spring-cloud app deployment start-JFR -g <resource-group-name> -s <service-instance-name> --app <app-name> --deployment <deployment-name> --app-instance <app-instance name> --file-path <your-target-file-path-in-your-persistent-storage-mount-path> --duration <duration-of-JFR>

Varsayılan süre değeri 60s ' dır.

Tanılama dosyalarınızı alın

Kalıcı depolama ortamınızdaki hedef dosya yoluna gidin ve dökümünü/JFR 'yi bulun. Bunları yerel makinenize indirebilirsiniz. Oluşturulan dosyanın adı yığın dökümü için ' {appInstance} _ heapDump _ {timestamp}. hprof ', iş parçacığı için ' {appInstance} _ threaddump _ {timestamp} .txt ' ve jfr Için ' {appInstance} _ jfr _ {timestamp}. jfr ' gibi olacaktır.