APM: nedir, metrikler ve nasıl çalışır

Yazar: IT Sectr Yayınlanma: 2026-05-29 Okuma süresi: 8 dk

APM (Application Performance Monitoring), metrik toplama, istek izleme ve gerçek zamanlı hata teşhisi dahil olmak üzere yazılım performansını izlemeye yönelik kapsamlı bir yaklaşımdır. Gartner IT Glossary, 2024’e göre APM, üç temel alanı birleştirir: kullanıcı deneyimi izleme, uygulama mimarisinde arıza tespiti ve derinlemesine olay teşhisi için yürütme verileri analizi.

Anahtar Noktalar

  • APM — Application Performance Monitoring, tüm seviyelerde uygulama performansını gözlemlemek için bir sistem: istemci, ağ, sunucu, altyapı.
  • APM’nin üç ayağı — metrikler, izleme ve günlükler, uçtan uca olay analizi için birleşik bir gözlemlenebilirlik platformunda birleştirilmiştir.
  • Ajan tabanlı APM — ayrıntılı çalışma zamanı verilerini toplamak için uygulama sunucusuna bir yazılım ajanı kurulumu.
  • Hizmet haritası — izleme verilerinden otomatik olarak oluşturulan mikro hizmetler arasındaki bağımlılık grafiği.
  • Apdex puanı — kullanıcının uygulama yanıt süresinden memnuniyetinin standartlaştırılmış bir ölçüsüdür.

Geliştirmede APM Nedir

APM (Application Performance Monitoring), yazılım işletim verilerinin toplanmasını, görselleştirilmesini ve analizini kapsayan uygulama performans yönetimi disiplinidir. Bireysel metriklerin (CPU, bellek) noktasal izlenmesinin aksine, APM bütüncül bir bakış açısı sağlar: uygulamanın kullanıcı perspektifinden nasıl davrandığı, bileşenlerinin nasıl etkileşime girdiği ve darboğazların nerede oluştuğu.

APM kavramı, 2010’larda monolitik uygulamalardan mikro hizmet mimarisine geçişle ortaya çıktı. Hizmet sayısı 10–15 birimi aştığında, geleneksel izleme yöntemleri çalışmamaya başladı — hangi belirli hizmetin tüm isteği yavaşlattığını belirlemek imkansızdı. APM çözümleri, dağıtık izleme ve otomatik hizmet haritası oluşturma yoluyla bu sorunu çözdü.

Grand View Research (2024)’e göre, APM pazarı 8,2 milyar ABD doları olarak değerlendirilmekte ve yıllık %11,5 oranında büyümektedir. Ana itici güçler arasında buluta geçiş, mikro hizmet sayısındaki artış ve mobil uygulamalar ile web hizmetlerinde kullanıcı deneyimi kalitesine yönelik artan talepler yer almaktadır.

APM’nin Üç Ayağı: Metrikler, İzleme, Günlükler

Modern APM, birlikte uygulamanın durumunun tam bir resmini oluşturan üç tür veri üzerine kurulmuştur. Metrikler sayısal toplamlardır: yanıt süresi, istek sayısı, hata oranı. “Ne oluyor” sorusunu yanıtlarlar ve eşik değerlerine dayalı uyarıları yapılandırmaya olanak tanırlar.

Bağlantı Halkası Olarak İzleme

İzleme (dağıtık izleme) “bu neden oluyor” sorusunu yanıtlar. Her gelen istek, tüm mikro hizmetler, veritabanları ve harici çağrılar aracılığıyla izlenir. APM sistemi, metrikleri ve izlemeyi birleştirir: yanıt süresi metriği artmışsa, geliştirici izleme panosuna gider ve her hizmete göre ayrılmış şekilde yavaşlamaya neden olan tam isteği görür.

Derinlik İçin Günlükleme

Günlükler bağlam sağlar — belirli bir hata mesajı, değişken değeri, çağrı yığını. Modern APM platformları (Datadog, New Relic, Grafana), ortak bir trace_id aracılığıyla günlükleri izlemelere bağlayarak bir metrik grafiğinden belirli bir istek günlüğüne gezinmeye olanak tanır. Datadog (2025)’e göre, günlüklerin izlemelerle ilişkilendirilmesi, ortalama olay teşhisi süresini 45 dakikadan 12 dakikaya düşürür.

SinyalSoruBirim
MetriklerNe oluyor?Sayısal toplamlar
İzlemeBu neden oluyor?Span ve trace
GünlüklerTam olarak ne yanlış gitti?Metin kayıtları

APM Mimarisi: Ajanlar ve Toplayıcılar

Klasik APM mimarisi üç seviyeden oluşur: ajan, toplayıcı ve arka uç. Bir ajan, uygulamaya gömülü veya yanında (sidecar) çalıştırılan bir kütüphanedir. Ajan, gelen ve giden çağrıları keser, çalışma zamanı verilerini toplar ve güvenli bir kanal üzerinden toplayıcıya gönderir.

APM Ajanı Nasıl Çalışır

Java için bir APM ajanı, JVM düzeyinde javaagent aracılığıyla bağlanabilir ve tüm HTTP isteklerini, veritabanı çağrılarını, mesaj kuyruklarını ve harici API’leri otomatik olarak enstrümante eder. Mobil platformlar için ajan bir SDK olarak bağlanır ve cihazdan metrikler toplar. Android için New Relic Agent, örneğin OkHttp, HTTP istemcileri ve WebView aracılığıyla tüm ağ isteklerini otomatik olarak izler.

java
import com.newrelic.agent.android.NewRelic;

public class MainApplication extends Application {
    public void onCreate() {
        super.onCreate();
        NewRelic.withApplicationToken("YOUR_TOKEN")
            .start(this);
    }
}

Bu kod, bir Android uygulamasında New Relic Agent’ı başlatır. Başlatıldıktan sonra ajan, her ekranın ek enstrümantasyonu olmadan otomatik olarak ağ isteği metriklerini, hataları, ANR’leri ve UI performans verilerini toplar. Ajan bir arka plan iş parçacığında çalışır ve ana uygulama arayüzünün performansını etkilemez.

Toplayıcı ve Arka Uç

Toplayıcı, binlerce ajandan veri alır, metrikleri toplar, izleme örneklemesi yapar ve verileri sıcak ve soğuk depolama özellikleriyle uzun süreli depolamada saklar. APM arka ucu, panolar, uyarılar, hizmet haritaları ve harici sistemlerle (Slack, PagerDuty, Jira, ServiceNow) entegrasyon için bir API sağlar. Datadog, minimum iletim gecikmesi için 20’den fazla dünya bölgesinde bulunan toplayıcıları aracılığıyla saniyede 10 milyondan fazla veri noktasını işler.

Apdex Puanı ve SLA İzleme

Apdex (Application Performance Index), kullanıcının uygulama yanıt süresinden memnuniyetini ölçmek için açık bir standarttır. Apdex değeri şu formül kullanılarak hesaplanır: (memnun kullanıcı sayısı + tolere eden kullanıcı sayısı / 2) / toplam kullanıcı sayısı. Sonuç, 0 ile 1 arasında bir sayıdır ve burada 1, tüm kullanıcıların memnun olduğu anlamına gelir.

Apdex eşikleri her uygulama için ayrı ayrı belirlenir. Mobil uygulamalar için tipik bir memnuniyet eşiği, 1,5 saniyeye kadar yanıt süresi, tolere edilebilir olan ise 4,5 saniyeye kadardır. 4,5 saniyeyi aşan her şey kabul edilemez olarak kabul edilir. 0,94 ve üzeri bir Apdex puanı, üretim ortamı için mükemmel olarak kabul edilir.

Apdex yalnızca bir kalite metriği olarak değil, aynı zamanda uyarılar için bir eşik olarak da kullanılır. Apdex 10 dakika boyunca 0,85’in altına düşerse, APM sistemi nöbetçi ekibe bir bildirim gönderir. Bu, günün saatine ve yüke bağlı olarak dalgalanabilen mutlak yanıt süresi değerlerine güvenmekten daha dengeli bir yaklaşımdır.

Mobil Uygulamalar İçin APM

Mobil APM’nin kendine özgü özellikleri vardır: uygulama, farklı ağ koşullarında olabilen, farklı miktarlarda boş belleğe ve işletim sistemi sürümlerine sahip olabilen kullanıcının cihazında çalışır. Mobil APM, tüm bu faktörleri hesaba katmalı ve metriklerin cihaz modellerine, işletim sistemi sürümlerine, bölgelere ve ağ operatörlerine göre dökümünü sağlamalıdır.

Cihazdan Veri Toplama

Mobil APM ajanları, cihazda metrikler toplar ve bunları 1–5 dakikalık aralıklarla toplu olarak sunucuya gönderir. Bu, kullanıcının trafiği üzerindeki etkiyi en aza indirir. Bağlantı kaybı durumunda veriler yerel bir önbellekte saklanır ve bir sonraki bağlantıda gönderilir. Firebase Performance ve Dynatrace Mobile, ağ kaybı durumunda otomatik yeniden gönderimi destekler.

Temel Mobil Metrikler

Mobil geliştirmede standart APM metriklerine belirli metrikler eklenir: soğuk başlatma süresi, kaydırma sırasında FPS, bellek tüketimi, ANR sıklığı (Android) ve watchdog sonlandırma sayısı (iOS). New Relic Mobile ayrıca harita görünümlerini, önbellek kullanım yüzdesini ve belirli ViewController’ların işleme süresini izler.

swift
import NewRelic

class ProfileViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
        NewRelic.startInteraction(withName: "ProfileView")
    }

    override func viewDidDisappear(animated: Bool) {
        super.viewDidDisappear(animated)
        NewRelic.stopCurrentInteraction()
    }
}

Swift kodu, kullanıcı profil ekranı için bir etkileşim izi oluşturur. New Relic, veri yükleme süresini, UI işlemesini ve bu ekran görüntülenirken yapılan tüm ağ isteklerini otomatik olarak ölçer.

Popüler APM Platformlarının Karşılaştırılması

APM pazarı, izleme derinliği, maliyet ve desteklenen platformlar açısından farklılık gösteren düzinelerce çözüm sunmaktadır. Datadog APM, metrikleri, izlemeleri ve günlükleri tek bir arayüzde birleştirmede liderdir. New Relic, mobil platformlar için en ayrıntılı izlemeyi sunar. Dynatrace, otomatik kök neden tespiti için Davis AI motorunu kullanır.

PlatformMobil AjanDağıtık İzlemeÜcretsiz Plan
DatadogiOS, AndroidEvetHayır
New ReliciOS, AndroidEvet100 GB/ay
DynatraceiOS, AndroidEvet15 gün
GrafanaOpenTelemetry üzerindenEvetEvet (OSS)

APM platformu seçimi, ekip büyüklüğüne, teknoloji yığınına ve bütçeye bağlıdır. Startup’lar için, arka uç için Grafana ile birleştirilmiş Firebase Performance idealdir. Yüksek SLA gereksinimleri olan kurumsal projeler için — eksiksiz bir gözlemlenebilirlik araçları seti ve AI destekli kök neden analizi ile Datadog veya Dynatrace.

Sıkça Sorulan Sorular

APM, normal sunucu izlemeden nasıl farklıdır?

Normal izleme, altyapı metriklerini izler: CPU, bellek, disk. APM, uygulama düzeyine bakar: belirli işlemlerin yürütme süresi, SQL sorguları, mikro hizmetler arasındaki HTTP çağrıları. APM, CPU’nun normal olduğunu ancak yavaş bir veritabanı sorgusu nedeniyle uygulamanın yavaş olduğunu gösterebilir.

Tek bir mikro hizmet için APM gerekli midir?

Tek bir hizmet için, temel kapsama için standart izleme + günlükleme yeterlidir. APM, 5 veya daha fazla hizmet olduğunda ve tek bir kullanıcı senaryosunda bir istek bunlardan birkaçından geçtiğinde gerekli hale gelir. APM, hangi belirli hizmetin tüm istek akışını yavaşlattığı ve darboğazın nerede olduğu konusunda yanıt verir.

APM, altyapı maliyetini nasıl etkiler?

APM ajanları, sunucu başına %1–3 CPU ve 50–200 MB bellek tüketir. Lisans maliyetleri, ana bilgisayar başına aylık 15 ila 80 dolar arasında değişir. Telemetri trafiği, izleme yoğunluğuna bağlı olarak ana bilgisayar başına günlük 1–10 GB’dır. OpenTelemetry + Grafana, ticari APM’ye ücretsiz bir alternatiftir.

APM, arka uç olmadan bir mobil uygulama için kullanılabilir mi?

Evet, mobil APM ajanları bağımsız olarak çalışır. Uygulamanın bir sunucu tarafı olmasa bile cihazda metrik toplarlar: başlatma süresi, FPS, çökmeler, üçüncü taraf API’lere yapılan ağ istekleri. Veriler, cihaz internete bağlandığında APM platformuna gönderilir.

APM yapılandırması ne sıklıkla güncellenmelidir?

Temel APM yapılandırması (eşikler, panolar, uyarılar) bir kez ayarlanır ve mimari değiştiğinde veya performans kıyaslamaları güncellendiğinde ayarlanır. Ajan yapılandırması, uygulamayı yeniden yayınlamaya veya kodu değiştirmeye gerek kalmadan APM platformu kontrol paneli aracılığıyla otomatik olarak güncellenir.

Özet

  • APM, metrikleri, izlemeyi ve günlükleri birleştiren kapsamlı bir uygulama performansı izleme çözümüdür.
  • Dağıtık izleme, APM’nin klasik izlemeden temel farkıdır ve bir isteğin yolunun tüm mikro hizmetler boyunca izlenmesine olanak tanır.
  • APM ajanları uygulamaya gömülür ve çalışma zamanı verilerini, HTTP isteklerini ve veritabanı çağrılarını otomatik olarak toplar.
  • Apdex puanı, yanıt süresi eşiklerine göre hesaplanan standartlaştırılmış bir kullanıcı memnuniyeti metriğidir.
  • Mobil APM, cihaza özgü durumları dikkate alır: soğuk başlatma, FPS, ANR, ağ koşulları ve işletim sistemi sürümleri.
  • OpenTelemetry, açık bir veri toplama standardı kullanarak satıcıya bağımlılık olmadan bir APM sistemi oluşturmaya olanak tanır.
  • APM platformu seçimi proje ölçeğine göre belirlenir: startup’lar için Firebase, yüksek gözlemlenebilirlik gereksinimleri olan kurumsal mimariler için Datadog veya Dynatrace.

Anahtar teslim bir mobil uygulama geliştireceğiz

IT Sectr, 2017'den beri girişimler ve işletmeler için iOS ve Android uygulamaları oluşturmaktadır. Size danışmanlık yapacak ve en iyi çözümü önereceğiz.

Projeyi tartış

Ayrıca okuyun