Datadog, ProfilingManager ile milyonlarca ayrıntılı performans analizi sunuyor
Okuma süresi: 4 dk.
Performans gerilemelerinin yeniden üretilmesi çok zordur. Bu nedenle gerilemeler, mobil geliştiriciler için büyük bir darboğaz oluşturur. ANR oranları gibi sinyaller, üretimde hangi sorunların meydana geldiğini gösterse de performans sorununa yol açan kod satırını tam olarak belirlemek için geçmişte kapsamlı manuel yeniden oluşturma veya tahmine dayalı deneme yanılma yöntemleri kullanılıyordu.
Datadog, bu sorunu çözmek için Google ile işbirliği yaparak ProfilingManager API'yi (Android 15 ve sonraki sürümleri çalıştıran cihazlarda kullanılabilir) Gerçek Kullanıcı İzleme (RUM) ve Sürekli Profil Oluşturma platformlarına entegre etti. Bu entegrasyon, hata ayıklama iş akışını dönüştürerek geliştiricilerin yüzeysel belirtilerin ötesine geçmesine ve performans darboğazının ardındaki nedeni tespit etmesine olanak tanır.
Datadog'un Haziran 2026 tarihli kendi verilerine göre, Datadog bu sistem düzeyindeki API'den yararlanarak artık dünya genelinde her hafta milyonlarca üretim profilini işliyor. Mühendislik ekiplerine gerçek dünya performansına dair yeni bir görünürlük düzeyi sunarken üretim ölçeğinde performans izleme için düşük çalışma zamanı ek yükü sağlar.
ProfilingManager'ın etkisi
ProfilingManager, Android 15'te kullanıma sunulan bir sistem hizmetidir. Uygulamaların, çağrı yığını örnekleri, alan izleri ve bellek yığın dökümleri gibi performans verilerini doğrudan üretim ortamlarından programatik olarak toplamasına olanak tanır. Bu özellik, mühendislik paradigmasını reaktif manuel yeniden üretimden proaktif saha analizine kaydırır.
Örneğin, bir Google iletişim uygulaması, yeni ve daha güçlü donanımlarda baştan başlatma sürelerinin neden daha yavaş olduğunu araştırmak için alan izlerini kullandı. Mühendis, sahada toplanan izleri inceleyip farklı cihaz türlerindeki izleri karşılaştırarak gizli bir planlama sorunu keşfetti: Arka plandaki bir metin okuma hizmeti, uygulama başlatılırken gereksiz yere önceden başlatılıyordu. İzlemeler, bu arka plan işleminin cihazın en yüksek performanslı büyük CPU çekirdeğini tekeline aldığını ve önceden ısıtma işlemi gerçekleşirken uygulamanın ana iş parçacığını uyku moduna geçmeye zorladığını gösterdi.
Android kod düzeyinde görünürlük sorununu çözme
Datadog'un Real User Monitoring (RUM) çözümü, ProfilingManager'ın uygulanmasından önce kullanıcı yolculuğunu değerlendirmek için üst düzey uygulama durumuna ve oturum düzeyinde telemetriye odaklanıyordu. Mühendislik ekipleri; ilk görüntüleme süresi, ANR oranları, CPU yükü ve donmuş kareler gibi Android performans sinyallerini izleyebilir. Bu analizler; ağ gecikmesi, dokunma etkinlikleri ve ana iş parçacığı takılmaları gibi ayrıntılı etkileşimleri de kapsıyordu. Ancak bu veriler, sahada hangi performans darboğazlarının ortaya çıktığını etkili bir şekilde vurgulasa da bu hataların temel nedenini belirlemek için net bir yol sunmuyordu.
Datadog, bu sorunu çözmek için Android izlerini minimum performans etkisiyle doğrudan üretimdeki cihazlardan yakalayabilen bir profil oluşturma motoruna ihtiyaç duyuyordu. Ekip, Android hata ayıklama API'lerini kullanarak kendi izleme işleyicilerini yazmak gibi alternatif yaklaşımları değerlendirdikten sonra ProfilingManager'ı seçti. Çünkü bu, değerlendirdikleri profil oluşturma seçenekleri arasında en yüksek performansı sunan çözümdü ve örnekleme kararlarının yükünü OS'ye devrediyordu.
ProfilingManager; CPU izleri, çağrı yığını örnekleme, Java yığın dökümleri ve yerel öbek profilleri aracılığıyla bellek analizi gibi çok çeşitli toplama yöntemlerini destekler. Geliştiricilerin üretim derlemelerinin profilini çıkarmasına, izleme dosyalarını harici depolama alanına yüklemesine ve Perfetto izleme analizörü kullanıcı arayüzünde incelemesine olanak tanır. SaaS sağlayıcısı olan Datadog, SDK'sı aracılığıyla toplanan bu profilleri yükler, görselleştirir ve analiz ederek uygulama durumunun birleşik bir görünümünü sunar.
ProfilingManager, yüksek kaliteli telemetriyi birleşik bir gözlemlenebilirlik API'sinde merkezileştirerek Datadog'un ve müşterilerinin karmaşık Android performans gerilemelerini proaktif olarak izlemesine, araştırmasına ve düzeltmesine olanak tanır. Bunu aşağıdaki önemli teknik avantajlar sayesinde yapar:
- Ayrıntılı oturum teşhisi: ProfilingManager, doğrudan işletim sistemi düzeyinde izleme verileri sunarak hata ayıklama özelliğini geliştirir. Böylece, sistem hizmetleriyle özel günlük kaydının tipik görünürlük ve uyum sorunlarını ortadan kaldırır. Geliştiriciler, daha ayrıntılı inceleme yapmak için bu izleri Datadog'dan indirerek Perfetto kullanıcı arayüzü gibi görselleştirme araçlarında daha ayrıntılı inceleyebilir.
- Otomatik telemetri tetikleyicileri: Datadog, önemli optimizasyon noktalarında izleme kayıtlarını başlatmak için yerel sistem etkinliklerinden yararlanarak özel toplama mantığı oluşturma ihtiyacını azaltır. İlk kullanıma sunma aşamasında APP_FULLY_DRAWN sinyaline odaklanılsa da bu gözlemlenebilirliği ANR, OOM ve COLD_START tetikleyicilerini de kapsayacak şekilde genişletme planları yapılıyor.
- Proaktif izleme anlık görüntüleri: ProfilingManager, doğrudan sistem düzeyindeki Perfetto hizmetiyle (izlenen) arayüz oluşturarak öngörülemeyen sorunları yakalamak için tasarlanmış proaktif bir arka plan kayıt modeli kullanır. Bu sayede geliştiriciler, performans anormalliğine yol açan olayların hassas bir görselleştirmesini elde eder ve manuel araçlarla mümkün olandan daha fazla bilgiye ulaşır.
- Geniş ölçekte darboğaz tespiti: Datadog, yalnızca benzersiz donanım yapılandırmaları ve değişken ağ ortamlarında ortaya çıkan gerilemeleri ortaya çıkarmak için Datadog'un küresel müşteri tabanından telemetriyi sentezleyebilir.
- Sistem tarafından uygulanan kaynak kararlılığı: API, performans ve kullanıcı deneyimi üzerindeki etkilerin fark edilmemesini sağlamak için örnekleme izi toplamadan yararlanır.
- Cihaz üzerinde veri denetimleri: ProfilingManager, profil uygulamaya gönderilmeden önce cihaz üzerindeki diğer işlemlerden gelen alakasız bilgileri filtreler. Bu sayede dosya boyutları küçülür ve yalnızca uygulamanın işlemleriyle ilgili veriler sağlanır.
Gerçek dünyadaki uygulamaları optimize etmek için her hafta milyonlarca profili işleme
Sistem düzeyinde bir profil oluşturma API'sini küresel bir izleme SDK'sına entegre etmek için altyapı sorunlarının çözülmesi gerekiyordu. ProfilingManager son derece ayrıntılı performans izleri oluşturduğundan Datadog mühendislik ekibinin, bu profilleri sunucu tarafında geniş ölçekte ayrıştırıp analiz edebilecek bir ardışık düzen oluşturması gerekiyordu. Datadog, profil toplamanın yanı sıra örnekleme sıklığını uygulamanız hakkında anlamlı analizler oluşturmaya yetecek kadar veri toplama ile dengelemenin önemini de vurgular. Datadog, kritik bir kararlılık önlemi olarak ProfilingManager'ın yerleşik sıklık sınırlamasını kullanır. Bu sayede, aşırı telemetri isteklerinin kullanıcı cihazlarına aşırı yük bindirmesini önler.
Ekip, aylardır Datadog'un kendi yerel Android uygulamasının ve ilk kullanıcıların uygulamalarının profilini çıkarıyor. Hızlı ve hatasız bir lansman deneyimi sunmak ve performans algılama algoritmalarını iyileştirmek için milyonlarca profil topluyor. Günümüzde üretim entegrasyonu, çeşitli Android cihazlarda sorunsuz bir şekilde ölçeklendirilebiliyor.
Sonuç
Datadog, Android'in ProfilingManager API'sini entegre ederek müşterileri için arka uç sistemleri ile mobil istemci uygulamaları arasındaki görünürlük boşluğunu başarıyla kapattı. Datadog, cihaz yükünü minimum düzeyde tutarak her hafta milyonlarca profili işler. Böylece Android geliştiricilerine, karmaşık performans hatalarını anında teşhis etmek için gereken kod düzeyinde analizler sunar. Bu sayede geliştiriciler daha sorunsuz uygulamalar oluşturabilir ve uygulamalarının Play Store'daki performans sinyallerini iyileştirebilir. ProfilingManager API'yi doğrudan performans gözlemlenebilirlik çerçevenize uyarlamak için belgelerimizi inceleyin.
Datadog, gelecekte Android profil oluşturma verilerini kodlama temsilcileri için birinci sınıf bir giriş haline getirerek performans darboğazlarını otonom olarak çözmeyi ve algılama ile düzeltme arasındaki geri bildirim döngüsünü kapatmayı hedefliyor. Datadog, Android profil oluşturma özelliğini geliştiricilerin genel kullanımına sunmak için çalışıyor.
ProfilingManager tarafından desteklenen Datadog gerçek kullanıcı izleme özelliğini kullanmaya başlamak için Datadog Mobile Real User Monitoring sayfasını ziyaret edin.
-
Başarılı ÖrneklerKarrot, kullanıcıların diğer doğrulanmış kullanıcılarla ürün alıp satmasına ve takas etmesine olanak tanıyan, yakın çevreye özel, topluluk odaklı bir eşler arası pazar yeri uygulamasıdır. 2015'te Güney Kore'de kullanıma sunulan platform, küresel pazarlara açılarak 43 milyondan fazla kayıtlı kullanıcıya ulaştı.
Thomas Ezan, Tracy Agyemang • Okuma süresi: 2 dk. -
Başarılı ÖrneklerGüneydoğu Asya'nın önde gelen süper uygulaması Grab, tek bir uygulama üzerinden sekiz ülkedeki milyonlarca kullanıcıya teslimat, mobilite ve finansal hizmetler sunuyor.
Ajesh Pai, Nguyen Van Minh, Tracy Agyemang • Okuma süresi: 5 dk. -
Başarılı ÖrneklerEkip, orijinal uygulamadan% 50 daha küçük olan yapay zeka tabanlı bir kullanıcı arayüzü kod tabanı oluşturdu. Bu sayede yapay zeka ajanı yürütme süresinde% 35 azalma, mühendis-ajan etkileşimlerinde% 32 azalma ve jeton maliyetinde% 33 azalma elde edildi.
Pavlo Stavytskyi, Rebecca Franks • Okuma süresi: 11 dk.
Android geliştiriciliğiyle ilgili en son analizleri her hafta gelen kutunuza alın.