Tüm Ürünler
Search
Belge Merkezi

Application Real-Time Monitoring Service:İş Parçacığı Profil Oluşturma

Son Güncelleme:Oct 05, 2026

İş parçacığı profil oluşturma, türlerine göre CPU süresi ve iş parçacığı sayıları hakkında iş parçacığı düzeyinde istatistikler sunar. Gerçek kod çalıştırmasını yeniden yapılandırmak ve iş parçacığıyla ilgili sorunları hızla tespit etmenize yardımcı olmak için her 5 dakikada bir iş parçacıklarının yöntem yığınını kaydeder ve toplar. Kümenizde yüksek CPU kullanımı veya çok sayıda yavaş yöntem fark ederseniz en fazla CPU tüketen iş parçacıklarını veya yöntemleri bulmak için iş parçacığı profil oluşturmayı kullanabilirsiniz.

Not

Bu özellik şu anda yalnızca Java uygulamaları için kullanılabilir.

Ön Koşullar

Önemli

ARMS uygulama izleme, yeni faturalandırma planındaki kullanıcılar için yeni bir izleme ayrıntıları sayfası sunar. Yeni faturalandırma planı hakkında daha fazla bilgi için bkz. Faturalandırma (Yeni).

Yeni faturalandırma planını etkinleştirmediyseniz application list sayfasında Switch to New Version seçeneğini tıklayın.

Uygulamanız için bir aracı yüklenmiş olmalıdır. Daha fazla bilgi için bkz. Uygulama İzleme Entegrasyonuna Genel Bakış.

Yordam

  1. ARMS konsolu oturumunu açın. Sol gezinme bölmesinde Application Monitoring > Application List seçeneğini belirleyin.

  2. Application List sayfasında üst kısımdan hedef bölgeyi seçin ve ardından uygulamanızın adını tıklayın.

    Not

    Language sütunundaki simgeler aşağıdaki anlamlara gelir:

    Java图标: Uygulama izleme ile entegre edilmiş bir Java uygulaması.

    image: Uygulama izleme ile entegre edilmiş bir Go uygulaması.

    image: Uygulama izleme ile entegre edilmiş bir Python uygulaması.

    -: Managed Service for OpenTelemetry ile entegre edilmiş bir uygulama.

  3. Üst gezinme çubuğunda Application Diagnostics > Thread Profiling seçeneğini belirleyin.

İş parçacıklarını analiz etme

Thread Profiling sayfasının sol tarafındaki listede tüm uygulama iş parçacıkları görüntülenir; bu sayede CPU time değerlerine göre anormal iş parçacıklarını hızlıca bulabilirsiniz. Anormal bir iş parçacığı seçtikten sonra sağ taraftaki grafikleri kullanarak bunun CPU time ve Number of Threads değerlerini analiz edin. Örneğin dakika başına toplam iş parçacığı sayısının aşırı olup olmadığını kontrol edin.

Herhangi bir anormal iş parçacığı için belirtilen bir zaman dilimindeki çalışma zamanı yöntem yığınını görüntülemek üzere Method Stack seçeneğini tıklayın. Örneğin BLOCKED durumunda olan iş parçacıklarına karşılık gelen yöntemleri görüntüleyebilirsiniz. Bu CPU kullanımını azaltmak ve optimize etmek için belirli kod segmentlerini tanımlamanıza yardımcı olur.

ALL: 365194  RUNNABLE: 986  BLOCKED: 87  WAITING: 1498  TIMED_WAITING: 362617

【BLOCKED】81/87 (times) - Percentage: 93.10%
at java.lang.Object.wait (Native Method)
  at xxx.awaitAvailable (BasicResourcePool.java:1315)
  at xxx.prelimCheckoutResource (BasicResourcePool.java:557)
  at xxx.checkoutResource (BasicResourcePool.java:477)
  at xxx.checkoutPooledConnection (C3P0PooledConnectionPool.java:525)
  at xxx.getConnection (AbstractPoolBackedDataSource.java:128)
  at xxx.getConnection (PoolingConnectionProvider.java:247)
  at xxx.getConnection (DBConnectionManager.java:108)
  at xxx.getConnection (JobStoreSupport.java:775)
  at com.alibaba.arms.alert.scheduler.xxx.EnhanceJobStoreSupport.getNonManagedTXConnection (EnhanceJobStoreSupport.java:17)
  at xxx.executeInNonManagedTXLock (JobStoreSupport.java:3777)
  at xxx.retryExecuteInNonManagedTXLock (JobStoreSupport.java:3742)
  at xxx.triggeredJobComplete (JobStoreSupport.java:3039)
  at xxx.notifyJobStoreJobComplete (QuartzScheduler.java:1804)
  at xxx.JobRunShell.java:269)
  at xxx$WorkerThread.run (SimpleThreadPool.java:573)

【BLOCKED】2/87 (times) - Percentage: 2.30%
at xxx.checkinStatement (GooGooStatementCache.java:220)
  at xxx.checkinStatement (NewPooledConnection.java:239)
  at xxx.close (NewProxyPreparedStatement.java:1807)
  at xxx.closeStatement (StdJDBCDelegate.java:3287)
  at xxx.deleteFiredTrigger (StdJDBCDelegate.java:2916)
  at xxx.triggeredJobComplete (JobStoreSupport.java:3116)
  at xxx.executeVoid (JobStoreSupport.java:3043)
  at xxx.$VoidTransactionCallback.execute (JobStoreSupport.java:3703)
  at xxx.$VoidTransactionCallback.execute (JobStoreSupport.java:3701)
  at xxx.executeInNonManagedTXLock (JobStoreSupport.java:3787)
  at xxx.retryExecuteInNonManagedTXLock (JobStoreSupport.java:3742)
  at xxx.triggeredJobComplete (JobStoreSupport.java:3039)
  at xxx.notifyJobStoreJobComplete (QuartzScheduler.java:1804)
  at xxx.JobRunShell.java:269)
  at xxx.WorkerThread.run (SimpleThreadPool.java:573)

【BLOCKED】1/87 (times) - Percentage: 1.15%

Aracı sürümünüz 2.7.3.5 veya üzeriyse ARMS iş parçacığı CPU kullanımına ilişkin daha doğru yöntem yığını bilgileri sağlamak için sürekli profil oluşturmayı kullanır. Aşağıdaki görsel bir örneği göstermektedir. Daha fazla bilgi için bkz. sürekli profil oluşturma.

image

Not

Method Stack seçeneğini tıkladıktan sonra veri görüntülenmiyorsa sorun gidermek için şu adımları izleyin:

  • Aracı sürümünüz 2.7.3.5'ten önceyse Application Configuration > Custom Configurations sekmesindeki Thread Settings bölümüne gidin ve Method stack for thread profiling anahtarının etkin olup olmadığını kontrol edin. Bu anahtar devre dışı bırakılırsa yöntem yığını bilgileri kaydedilemez. Etkinleştirilirse yöntem yığını bilgileri her 5 dakikada bir toplanır.

  • Aracı sürümünüz 2.7.3.5 veya üzeriyse Application Configuration > Custom Configurations sekmesindeki Continuous profiling bölümüne gidin ve main switch ile CPU hotspots anahtarlarının etkin olduğundan emin olun. Yöntem yığını bilgilerinin kaydedilmesi için her iki anahtarın da etkinleştirilmesi gerekir.