Uygulamanız için bir izleme aracı (probe) yükledikten sonra ARMS uygulamanızı izlemeye başlar. Provided Services sayfasında, uygulamanızın sağladığı hizmetlere ilişkin API çağrıları, mesaj abonelikleri ve zamanlanmış görevler dahil olmak üzere ayrıntılı bilgileri görüntüleyebilirsiniz.
Önkoşullar
ARMS Application Monitoring, yeni faturalandırma modelini etkinleştiren kullanıcılar için yeni bir izleme ayrıntıları sayfası sunar. Yeni faturalandırma modeli hakkında bilgi edinmek için bkz. Product Billing (New).
Yeni faturalandırma modelini henüz etkinleştirmediyseniz ancak yeni izleme ayrıntıları sayfasına erişmek istiyorsanız Application List sayfasında Switch to New Version seçeneğine tıklayın.
Uygulamanız için bir izleme aracı (probe) yüklediğinizden emin olun. Talimatlar için bkz. Overview of Application Monitoring Integration.
Bir uygulamanın sağladığı hizmetleri görüntüleme
ARMS konsoluna giriş yapın. Sol gezinme bölmesinde yolunu izleyin.
-
Application List sayfasında üst gezinme çubuğundan bölgeyi seçin ve ardından uygulamanın adına tıklayın.
NotLanguage sütunundaki simgeler aşağıdaki anlamlara gelir:
: Application Monitoring ile bağlantılı bir Java uygulaması.
: Application Monitoring ile bağlantılı bir Golang uygulaması.
: Application Monitoring ile bağlantılı bir Python uygulaması.-: Managed Service for OpenTelemetry ile bağlantılı bir uygulama.
-
Üst gezinme çubuğunda Provided Services seçeneğine tıklayın.
Hızlı filtreleme alanında grafikleri ve hizmet listesini Request Type, Interface Name veya Host alanlarına göre filtreleyin.
-
Trend grafiği alanında hizmetlerin istek sayısı, hata sayısı ve ortalama yanıt süresi için zaman serisi eğrilerini görüntüleyin.
Belirli bir zaman dilimine ait istatistikleri görüntülemek veya aynı zaman dilimi için farklı tarihlerdeki istatistikleri karşılaştırmak amacıyla iletişim kutusunu açmak için
simgesine tıklayın. Sütun grafikleri ile trend grafikleri arasında geçiş yapmak için
simgesine tıklayın. -
Hizmet listesi alanında arayüz adı, istek türü ve RED ölçümleri (istek sayısı, hata sayısı ve ortalama yanıt süresi) gibi bilgileri görüntüleyin.
Hizmet listesinde aşağıdaki işlemleri yapabilirsiniz:
İlgili hizmetin ayrıntılı bilgilerini görüntülemek için bir arayüz adına veya Actions sütunundaki Details, SQL Analysis ya da NoSQL Analysis seçeneklerine tıklayın. Daha fazla bilgi için bkz. Interface Details.
Çağrıya ilişkin izleme ayrıntılarını görüntülemek için Actions sütunundaki Trace seçeneğine tıklayın. Daha fazla bilgi için bkz. Trace Analysis.
Desteklenen çerçeveler
Arayüz ayrıntıları
API çağrıları
Genel Bakış
Overview sekmesinde hedef arayüzün istek sayısı, hata sayısı, ortalama yanıt süresi, HTTP durum kodu istatistikleri ve yavaş çağrılara ait zaman serisi eğrilerini görüntüleyin.

SQL ve NoSQL analizi
SQL Analysis ve NoSQL Analysis sekmelerinde sol tarafta seçili arayüz tarafından başlatılan SQL ve NoSQL isteklerinin listelerini görüntüleyin. Ana bilgisayar listesini kullanarak ana bilgisayara göre de filtreleme yapabilirsiniz. Bu sekmeler, bir hizmetin yavaş çalışmasına neden olan SQL veya NoSQL sorgusunu belirlemenize yardımcı olur.
Veritabanı ayrıntılarını görüntülemek için bir Database Name öğesine tıklayın. Bir SQL veya NoSQL girdisinin yanındaki Trace seçeneğine tıklayarak yürütme mantığını içeren tam kod izlemesini görüntüleyin. Daha fazla bilgi için bkz. Trace Analysis.
SQL Analysis sekmesi; istek sayısı, yavaş SQL sayısı ve ortalama yanıt süresini gösteren bir Request Trend grafiği görüntüler. Grafiğin altında ise Database Name, Database Type, Operation Type, SQL Statement, Request Count, Average Response Time, Slow SQL Count ve Response Size gibi alanları listeleyen bir SQL analiz tablosu bulunur. İzleme sorgusu başlatmak için Actions seçeneğine tıklayın.
İzlemelerde yukarı akış ve aşağı akış arayüz çağrıları
Trace Upstream ve Trace Downstream sekmeleri sırasıyla yukarı akış çağıranlar (uygulamanızı çağıranlar) ve aşağı akış çağrılanlar (uygulamanız tarafından çağrılanlar) için arayüzleri ve bunların istek sayısı, hata sayısı ve yanıt süresi gibi performans ölçümlerini listeler.
İzleme analizi
İzleme analizi özelliği, depolanan tam izleme ayrıntı verilerine dayalı olarak filtreleri ve toplama boyutlarını özgürce birleştirerek gerçek zamanlı analiz gerçekleştirir ve çeşitli senaryolar için özel tanılama desteği sunar. Daha fazla bilgi için bkz. Trace Analysis. Tracing Analysis konsolundaki Trace Analysis sayfasında sonuçları filtrelemek için arama çubuğuna serviceName : "mall-gateway" ifadesini girin. Sol taraftaki hızlı filtre paneli durum, yanıt süresi (0 ns–5 s), arayüz adı (GET, MallController.userCart, LLEN, SET gibi) ve ana bilgisayar adresine göre filtrelemeyi destekler. Sayfanın üst kısmında çağrı sayısı ve hata sayısı için sütun grafiklerini, ortalama yanıt süresi için ise çizgi grafiğini görüntüleyin. Ortadaki veri tablosu TraceId, Interface Name, Application Name, Response Time, Status, Start Time ve Host Address gibi sütunlar içerir. Liste, Dağılım Grafiği, Tam İzleme Toplaması, Tam İzleme Topolojisi ve Hata/Yavaş İzleme Analizi için sekmeler mevcuttur. Sağ taraftaki Slow Trace Analysis paneli en yüksek spanName katkılarının sıralamasını gösterir.
Mesaj abonelikleri
Python uygulamaları şu anda mesaj aboneliklerini görüntülemeyi desteklemez.
Genel Bakış
Overview sekmesinde hedef arayüzün istek sayısı, hata sayısı, ortalama yanıt süresi ve tüketim gecikmesini (şu anda yalnızca RocketMQ 4.8.0+ için desteklenir) görüntüleyin.
SQL ve NoSQL analizi
SQL Analysis ve NoSQL Analysis sekmelerinde sol tarafta seçili arayüz tarafından başlatılan SQL ve NoSQL isteklerinin listelerini görüntüleyin. Ana bilgisayar listesini kullanarak ana bilgisayara göre de filtreleme yapabilirsiniz. Bu sekmeler, bir hizmetin yavaş çalışmasına neden olan SQL veya NoSQL sorgusunu belirlemenize yardımcı olur.
Veritabanı ayrıntılarını görüntülemek için bir Database Name öğesine tıklayın. Bir SQL veya NoSQL girdisinin yanındaki Trace seçeneğine tıklayarak yürütme mantığını içeren tam kod izlemesini görüntüleyin. Daha fazla bilgi için bkz. Trace Analysis.
SQL Analysis sayfasının sağ tarafında istek sayısı, yavaş SQL sayısı ve ortalama yanıt süresini gösteren zaman serili bir Request Trend grafiği ve bir SQL Details tablosu görüntülenir. Tablo; Veritabanı Adı, Veritabanı Türü, İşlem Türü, SQL İfadesi, İstek Sayısı, Ortalama Yanıt Süresi, Yavaş SQL Sayısı, Yanıt Boyutu ve Eylemler gibi sütunlar içerir.
Tüketim istatistikleri
Consumption Statistics sekmesi, tüketicinin bakış açısından konu tüketimini; istek sayısı, hata sayısı ve yanıt süresi dahil olmak üzere gösterir.
Sayfanın sol tarafında Interface List ve Application Instance List olmak üzere iki filtreleme alanı bulunur. Ana içerik alanının üst kısmında Received Count/1m, Error Count/1m ve Response Time/1m olmak üzere üç zaman serisi çizgi grafiğini görüntüleyin. Bunların altında IP, Alınan Sayı, Hata Sayısı ve Ortalama Yanıt Süresi sütunlarına sahip örnek bazında bir özet veri tablosu yer alır.
İzleme analizi
İzleme analizi özelliği, depolanan tam izleme ayrıntı verilerine dayalı olarak filtreleri ve toplama boyutlarını özgürce birleştirerek gerçek zamanlı analiz gerçekleştirir ve çeşitli senaryolar için özel tanılama desteği sunar. Daha fazla bilgi için bkz. Trace Analysis.
Zamanlanmış görevler
Şu anda yalnızca Java uygulamaları zamanlanmış görevleri görüntülemeyi destekler.
Genel Bakış
Overview sekmesinde hedef arayüzün istek sayısı, hata sayısı, ortalama yanıt süresi ve zamanlama gecikmesine ait bir zaman serisi eğrisini görüntüleyin.

SQL ve NoSQL analizi
SQL Analysis ve NoSQL Analysis sekmelerinde sol tarafta seçili arayüz tarafından başlatılan SQL ve NoSQL isteklerinin listelerini görüntüleyin. Ana bilgisayar listesini kullanarak ana bilgisayara göre de filtreleme yapabilirsiniz. Bu sekmeler, bir hizmetin yavaş çalışmasına neden olan SQL veya NoSQL sorgusunu belirlemenize yardımcı olur.
Veritabanı ayrıntılarını görüntülemek için bir Database Name öğesine tıklayın. Bir SQL veya NoSQL girdisinin yanındaki Trace seçeneğine tıklayarak yürütme mantığını içeren tam kod izlemesini görüntüleyin. Daha fazla bilgi için bkz. Trace Analysis.
SQL Analysis sekmesi üst kısımda bir istek trend grafiği (dakika başına çağrı, yavaş SQL sayısı ve ortalama yanıt süresi) ve alt kısımda SQL İfadesi, Çağrı Sayısı, Ortalama Yanıt Süresi, Yavaş SQL Sayısı ve Yanıt Boyutu gibi alanları gösteren bir SQL listesi görüntüler. Her satır Details ve Trace için erişim noktaları sağlar.
İzlemelerde aşağı akış arayüz çağrıları
Trace Downstream sekmesi, aşağı akış çağrılanlar (uygulamanız tarafından çağrılanlar) için arayüzleri ve bunların istek sayısı, hata sayısı ve yanıt süresi gibi performans ölçümlerini listeler.
Sayfanın sol tarafında her bir arayüz için istek sayısı, hata sayısı ve ortalama yanıt süresini içeren bir arayüz listesi gösterilir. Sol alt köşede bir ana bilgisayar listesi görüntülenir. Ana içerik alanında sonuçları filtrelemek için Downstream Application ve Interface açılır menülerini kullanın. Bunların altında istek sayısı, hata sayısı ve yanıt süresi için trend panelleri yer alır.
İzleme analizi
İzleme analizi özelliği, depolanan tam izleme ayrıntı verilerine dayalı olarak filtreleri ve toplama boyutlarını özgürce birleştirerek gerçek zamanlı analiz gerçekleştirir ve çeşitli senaryolar için özel tanılama desteği sunar. Daha fazla bilgi için bkz. Trace Analysis.
SSS
API çağrılarıyla ilgili
Bir API çağrısı için izleme yukarı akışı nedir?
Bu, yukarı akış uygulamalarının bu uygulamayı kaç kez çağırdığını ifade eder. Kayıtlar yalnızca yukarı akış uygulamasında bir ARMS izleme aracı (probe) yüklüyse görünür. Yukarı akış uygulamasında izleme aracı yoksa kayıt görünmez. Uygulamanın kendi kendine yaptığı çağrılar da yukarı akış olarak görünür.
Bazı API'lerde yukarı akış alım uç noktası eksik
Bir arayüz gerçekten yukarı akış çağrılarına sahipse ancak bu yukarı akış uygulamalarında ARMS izleme araçları yoksa yukarı akış çağrıları görünmez.
Bağlantı yukarı akış ve aşağı akış karışık
İzlemeniz SkyWalking bileşenlerini kullanıyorsa tüm izleme varsayılan olarak SkyWalking protokolünü kullanır. ARMS, 4,2.x sürümünden önce SkyWalking protokolünü desteklemede sorunlar yaşıyordu ve bu durum yukarı/aşağı akış tanımlama hatalarına neden oluyordu. 4,2.x veya daha sonraki bir sürüme yükseltin ya da Custom Configuration sayfasında Trace Context Propagation Protocol Settings altında izleme bağlamı yayılımı için SkyWalking dışı bir protokolü zorunlu kılın. Talimatlar için bkz. Trace Context Propagation Protocol Settings.
Dubbo arayüzü hata sayısı sıfır değil ancak izleme bulunamadı
3,2.x'ten önceki izleme aracı sürümlerinde Dubbo izlemeleri durum kodlarını doğru şekilde kaydetmiyordu ve bu durum hata izlemelerinin görünmesini engelliyordu. Bu sorun 3,2.x ve sonraki sürümlerde giderilmiştir.
API çağrılarında istisna sayısı sıfır değil ancak izleme aramasında istisna izleri görünmüyor
4,1.x sürümünden önce izleme araçları yalnızca hata ve yavaş izlemeleri kaydettiği için hatasız veya yavaş olmayan istisnalar örneklenmeyebilirdi. 4,1.x sürümünden başlayarak izleme araçları hata, yavaş ve istisna izlemelerini örnekler; bu nedenle istisnalar artık örneklemeyi tetikler.
Arayüz trafiği neden düştü?
Öncelikle düşüş zamanındaki CPU kullanımı, ağ G/Ç'si ve diğer ölçümleri kontrol ederek trafiğin gerçekten düşüp düşmediğini doğrulayın:
Durum böyleyse genellikle gerçek trafikte bir düşüş söz konusudur.
Değilse ARMS sunucu tarafında sorunlar olabilir. Bu durumda yardım almak için bir destek talebi gönderin.
Spring Cloud Gateway izleme trafiği yanlış
4.x öncesi izleme aracı sürümlerinde Spring Cloud Gateway enstrümantasyonunda hatalar vardı ve bu durum bazı senaryolarda trafik kaybına neden oluyordu. İzleme aracı sürümünü 4.x veya daha sonraki bir sürüme yükseltin.
Bir arayüz için yavaş SQL ifadelerini görüntüleyebilir miyim?
Yeni konsol
İzleme ayrıntıları sayfasında hedef arayüzün adına tıklayın ve ardından SQL Analysis sayfasına gidin.
Bu sayfa bir istek trend grafiği ve bir SQL analiz tablosu gösterir. Tablo; Database Name, Database Type, Operation Type, SQL Statement, Request Count, Average Response Time, Slow SQL Count ve Response Size gibi sütunlar içerir. Yavaş SQL'i bulmak için bu tabloyu kullanın ve daha fazla sorun giderme işlemi için Trace seçeneğine tıklayın.
Eski Konsol
Hedef uygulama için yolunu izleyin. Bu sayfa arayüzle ilgili SQL çağrı istatistiklerini gösterir.
Eski Konsolda arayüzlerden önceki sarı noktalar ne anlama gelir?
Anlamını görmek için fare imlecini noktanın üzerine getirin.
Sarı nokta yavaş bir çağrıyı gösterir. Varsayılan olarak 500 ms'den uzun süren istekler yavaş olarak işaretlenir. Bu eşiği Custom Configuration sayfasının Interface Call Configuration bölümünde ayarlayabilirsiniz.
Kırmızı nokta bir hatayı gösterir.
Neden bazı 5xx durum kodları toplanmaz?
RFC7231'e göre 502 ve 504 gibi durum kodları ağ geçitleri tarafından oluşturulur ve mutlaka çağrılan hizmetten gelen gerçek yanıtı yansıtmaz. Ağ geçidinde ARMS izleme yoksa ancak arka uç hizmetinde varsa bu 5xx yanıtları sayılmaz.
NetWork And Dubbo Response Decode nedir?
Dubbo aktarım katmanı verilerinin seri durumdan çıkarılması için harcanan süreyi ölçen bir span'dir.
Arayüz adlarında neden * veya ARMS anahtar sözcükleri bulunur?
Bu durum arayüz adlarının son derece değişken olması durumunda ortaya çıkar. ARMS, benzer arayüzleri farklı kısımları değiştirerek birleştirir. Ayrıntılar için bkz. ARMS Convergence Mechanism.
Neden harici çağrı süresi gerçek aşağı akış hizmeti süresinden farklıdır?
Sunucu tarafındaki süre yalnızca arayüzün isteği işleme süresini ölçer. İstemci tarafındaki süre bağlantı kurulumu ve ağ süresini içerir. ARMS konsolu her iki süreyi ayrı ayrı gösterir ancak ağla ilgili süre kesin olarak belirlenemez.
Arayüz normal şekilde döndürüyor ancak tek çağrılı istisna sayısı sıfır değil
Bu beklenen bir durumdur. Bazı çerçeveler (OkHttp3 gibi) dahili olarak istisnalar fırlatır ve bunlar harici olarak yakalanır; bu nedenle iş mantığı normal kalır. ARMS bu çerçeveleri enstrümante ettiği için bu istisnaları kaydeder ancak bunlar gerçek iş sorunlarını göstermez. Bunları ele alıp almamaya siz karar verebilirsiniz. Bu istatistikler istisna mesajı ayrıntılarını yok sayar. Gerçek istisna mesajını görmek için istisnaya ait bir izlemeye tıklayın ve ardından yöntem yığınında istisnayı görüntülemek üzere arayüzün yanındaki
simgesine tıklayın.
HTTP arayüz adları /error, /404, /, / gibi**
Bunlar genellikle ARMS'in bir rotayla eşleştiremediği beklenmeyen isteklerin sonucudur. Yaygın nedenler şunlardır:
Var olmayan bir URL'ye istekte bulunma.
Geçersiz karakterler içeren başlıklar gibi doğrulama hatalarına neden olan geçersiz istek başlıkları.
Raw Netty gibi yönlendirme mekanizması olmayan HTTP sunucularını kullanma.
Neden arayüz çağrılarındaki istek sayıları izleme analizindeki sayılardan farklıdır?
İzleme analizi izleme verilerine dayanır ve örnekleme oranından etkilenir.
Neden arayüz ayrıntıları ve izleme analizi arasındaki kantil yanıt süreleri farklıdır?
Arayüz ayrıntıları, paketleme algoritmalarını kullanarak örnek başına kantilleri hesaplar. İzleme analizi ise arayüz için örneklenen span'lardan kantilleri hesaplar. Bu nedenle değerler farklılık gösterir. Ayrıntılar için bkz. ARMS Quantile Metric Calculation Principles.
API çağrı hacmi yaklaşık iki katına çıktı
Bu durum genellikle yükseltme sırasında hem 3.x hem de 4.x izleme araçlarının yanlışlıkla eklenmesi durumunda ortaya çıkar. yolunu izleyin, herhangi bir izleme aracını seçin ve JVM parametrelerini kontrol etmek için View Details seçeneğine tıklayın.
İki -javaagent parametresi hem 3.x hem de 4.x izleme araçlarının eklendiğini gösterir.
Örneğin, 3.x izleme aracı -javaagent:/home/admin/.opt/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar kullanırken 4.x izleme aracı -javaagent:/srv/ArmsAgent/aliyun-java-agent.jar kullanır.
Neden ARMS konsolu çağrı hacmi diğer kaynaklardan farklıdır?
Farklılıklar birden fazla şekilde ortaya çıkabilir. İki yaygın senaryo şöyledir:
ARMS bir uygulama arayüzü için dakikada 500 çağrı gösterirken Nginx dakikada 200 çağrı gösteriyorsa bu durum genellikle bazı trafiğin Nginx'i atlayarak uygulamaya doğrudan eriştiği anlamına gelir.
ARMS bir uygulamadan dakikada 400 VT erişimi gösterirken VT sunucusu izleme dakikada 1.000 yürütme gösteriyorsa bu durum genellikle birden fazla uygulamanın aynı VT'ye eriştiği; ARMS'in ise yalnızca belirtilen uygulamanın trafiğini gösterdiği anlamına gelir.
ARMS'in WebFlux senaryoları için desteği nedir?
4.x öncesi izleme aracı sürümleri yalnızca yerel Spring WebFlux ve spring-cloud-gateway'i destekler. Özel WebHandler değişiklikleri (Apache Shenyu gibi) desteklenmez.
Neden bana ait olmayan yukarı akış uygulamaları görüyorum ve neden ayrıntılarını görüntüleyemiyorum?
Bu uygulamalar genel hizmetler sağlıyorsa bu durum normaldir. Yukarı akış uygulaması başka bir kullanıcıya aittir ve bu durum kullanıcılar arası bir çağrı ilişkisi oluşturur. ARMS yukarı akış uygulama adını ve çağrı sayısını kaydeder ancak kullanıcı izolasyonu nedeniyle diğer kullanıcının uygulama ayrıntılarını görüntüleyemezsiniz.
Açık çağrı ilişkilerine rağmen neden beklenen yukarı/aşağı akış verilerini görmüyorum?
ARMS kullanıcı izlemelerini rastgele inceler ve LocalRootSpan içindeki trace.protocol.type alanını kontrol eder. Değer Jager ise büyük/küçük harf dönüştürme sorunları yukarı/aşağı akış tanımlama hatalarına neden olur. Bunu düzeltmek için başka bir protokole geçin veya bir destek talebi gönderin.
Trace Details sayfasında LocalRootSpan'i seçin ve sağ taraftaki Additional Information altında trace.protocol.type alanını kontrol edin. Normal bir değer örneği EagleEye şeklindedir.
Mesaj aboneliğiyle ilgili
İstemci ve sunucu görünümleri arasındaki veri farkı
Message Subscription ve Message Publishing sayfaları seçili uygulamanın tüketici veya üretici olarak rolündeki istemci tarafı performans ölçümlerini gösterirken bir MQ örneğinin izleme panosu sunucu tarafı, konu ile ilgili performans ölçümlerini gösterir.
Mesajlar için span adı biçimleri
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Spring Cloud Alibaba RocketMQ desteği
Bu çerçeve aracı sürümleri 4.x ve sonraki sürümlerde desteklenir. Aracı sürümünüz 4.x'ten önceyse ARMS aracısını yükseltin.
Mesaj Gecikmesi ölçümü
Mesaj gecikmesi, mesaj üretiminden tüketimine kadar geçen toplam süreyi ifade eder. Bu ölçümün birimi milisaniyedir (ms). Bu ölçüm şu anda yalnızca RocketMQ Client ve Ons Client için toplanır.
Tüketici izlemeleri veya ölçümleri eksik
Bu durum aracı sürümü 4.x'ten önceyse ve mesaj dinleyicisinde tüketim mantığını tanımlamak için lambda ifadeleri kullanıyorsanız ortaya çıkabilir.
2.x ve 3.x aracı sürümlerinde lambda ifadeleri için sınıf geliştirmesi başarısız olduğundan bu sorunu çözmek için aracıyı 4.x sürümüne yükseltebilirsiniz.
Kafka 'Magic v1' başlık hatası
Java aracı, izleme bağlamını yaymak için Kafka mesajlarının Header alanını kullanır. 0.11.0.0'dan önceki Kafka sürümlerinde (hem istemciler hem de broker'lar için) mesaj biçimi başlıkları desteklemez. Broker'ınız veya istemciniz için daha eski bir Kafka sürümü kullanıyorsanız 0.11.0.0 veya daha sonraki bir sürüme geçiş yapın. Hemen geçiş yapamıyorsanız 4.x'ten önceki Java aracı sürümleri için uygulamanın Custom Configurations sayfasındaki Agent Switch Settings bölümünde Kafka bileşeni geliştirmesini (kafka-plugin anahtarı) devre dışı bırakabilirsiniz. 4.x ve sonraki Java aracı sürümleri için hizmeti başlatırken geçici çözüm olarak -Dotel.instrumentation.kafka.producer-propagation.enabled=false JVM parametresini ekleyin.
İzlemelerde eksik mesaj span'ları
Üretici ve tüketici uygulamalarınız tarafından kullanılan mesaj kuyruğu istemci SDK'larının ARMS tarafından desteklendiğini kontrol edin. Desteklenen bileşenler için bkz. Supported Java components and frameworks for ARMS Application Monitoring.
Hem üretici hem de tüketici uygulamalarınızın Application Monitoring veya Managed Service for OpenTelemetry ile bağlantılı olduğunu, aracı ve eklenti anahtarlarının etkinleştirildiğini ve aynı bölgeye raporlama yaptığını kontrol edin. Mesaj gönderme span'ları üreticide, mesaj alma span'ları ise tüketicide oluşturulur. Uygulamalardan biri doğru şekilde yapılandırılmamışsa span'ları eksik olur.
Mesaj gönderme span'larını göremiyorsanız üretici uygulamasının aracı sürümünün 4.x veya daha sonraki bir sürüm olup olmadığını kontrol edin. 4.x'ten önceki aracı sürümlerinde mesaj gönderme ayrı bir span olarak kaydedilmez bunun yerine üst span'ın yöntem yığınına dahil edilir. Yöntem çağrı yığınını görüntülemek için üst span'ın yanındaki
simgesine tıklayabilirsiniz.Mesaj alma span'larını göremiyorsanız tüketici uygulamasının Custom Configurations sayfasındaki Interface Call Configuration bölümünde bir Invalid API Filter yapılandırdığınızı kontrol edin. Bu filtre istenmeyen span'ların toplanmasını hariç tutmak için kullanılır.
Aracı sürümleri arasında Kafka yanıt süresi farkı
Belirti: Yanıt süresi birkaç saniyeden 0,x milisaniyeye düşer.
Neden:
3.x ve önceki aracı sürümlerinde BatchMessageListener işlenirken bir mesaj grubu tek bir çağrı olarak değerlendirilir ve süreleri tek bir değerde toplanır.
4.x ve sonraki aracı sürümleri bu mantığı ayırarak her mesajı bağımsız bir çağrı olarak sayar. Bu nedenle 3.x'ten 4.x aracıya yükseltme yapıldığında çağrı başına yanıt süresi önemli ölçüde azalırken çağrı sayısı önemli ölçüde artar.
3.x sürümünde kullanılan istatistiksel yöntem daha az hassastı ve 4.x sürümünde iyileştirildi.
Mesaj aboneliklerinde Kafka tüketimi izlemelerde neden tekrarlanıyor?
spring-kafka'nın batchMessageListener'ını kullanıyorsanız gruptaki her mesaj aynı Kafka tüketim mantığı içinde kaydedilir. spring-kafka batchMessageListener'ı şu şekillerde uygular:
Tüketim yönteminize
@KafkaListener(topics = "my-topic", batch = true)açıklamasını ekleyin.Tüketim yöntemi sınıfınızda
BatchMessageListenerarabirimini uygulayın.Kafka Message Listener Container özelliklerinde toplu tüketim modunu etkinleştirin:
containerProperties.setBatchListener(true).
Zamanlanmış görevlerle ilgili
Neden geçersiz arayüz filtreleme zamanlanmış görev arayüzleri için çalışmaz?
İzleme aracı sürümünüzü kontrol edin. 3.2.0'dan düşük veya 4.0.0 ile 4.2.0 arasındaki izleme araçları için geçersiz arayüz filtreleme etkili olmayabilir. İzleme aracı sürümünü 3.2.10'a veya 4.2.0'dan yüksek bir sürüme yükseltmenizi öneririz.
Zamanlanmış görevlerde mevcut olmasına rağmen neden harici çağrılar izlemelerde eksik?
Sorun giderme adımları:
Zamanlanmış görev izlemeleri kendileri eksikse öncelikle Supported Java Components and Frameworks for ARMS Application Monitoring bölümünü kontrol edin ve Probe Switch Settings ayarlarını doğrulayın.
Yalnızca harici çağrılar eksikse ve izleme aracı sürümünüz 4.0.0'dan düşükse asenkron senaryolarda izleme bağlamı yayılımı başarısız olabilir. İzleme aracı sürümünü 4.0.0 veya daha sonraki bir sürüme yükseltin veya otomatik bağlam yayılımını yapılandırmak için Advanced Settings özelliğini kullanın.
Neden xxl-job çerçeve verileri eksik?
3.1.0 sürümünden düşük izleme araçları xxl-job'u desteklemez. Daha yeni bir izleme aracı sürümüne yükseltin.
xxl-job kodunu özelleştirdiyseniz (örneğin anahtar sınıfları yeniden adlandırarak; sınıf ve paket adları dahil) izleme aracı enstrümantasyonu çalışmaz. Bu durumda OpenTelemetry Java SDK kullanarak izlemelere özel enstrümantasyon ekleyin.