APM (Application Performance Monitoring) — bu dasturiy ta'minot samaradorligini kuzatish uchun kompleks yondashuv bo'lib, real vaqtda metrikalarni yig'ish, so'rovlarni kuzatish va xatolarni diagnostika qilishni o'z ichiga oladi. Gartner IT Glossary, 2024 ma'lumotlariga ko'ra, APM uchta asosiy yo'nalishni birlashtiradi: foydalanuvchi tajribasi monitoringi, dastur arxitekturasidagi nosozliklarni aniqlash va hodisalarni chuqur diagnostika qilish uchun bajarilish ma'lumotlarining analitikasi.
Asosiy fikrlar
APM (Application Performance Monitoring) — dasturiy ta'minotning ishlashi haqidagi ma'lumotlarni yig'ish, vizuallashtirish va tahlil qilishni o'z ichiga olgan dastur samaradorligini boshqarish intizomi. Alohida metrikalarning (CPU, xotira) nuqtaviy monitoringidan farqli o'laroq, APM yaxlit manzarani taqdim etadi: dastur foydalanuvchi nuqtai nazaridan qanday harakat qiladi, uning komponentlari qanday o'zaro ta'sir qiladi va tor joylar qayerda paydo bo'ladi.
APM kontseptsiyasi 2010-yillarda monolit dasturlardan mikroxizmat arxitekturasiga o'tish bilan shakllandi. Xizmatlar soni 10–15 birlikdan oshganda, an'anaviy monitoring usullari ishlamay qoldi — qaysi xizmat butun so'rovning sekinlashishiga sabab bo'lganini aniqlash imkonsiz edi. APM yechimlari bu muammoni distributed tracing va xizmatlar xaritasini avtomatik qurish orqali hal qildi.
Grand View Research (2024) ma'lumotlariga ko'ra, APM bozori 8,2 milliard AQSh dollari qiymatida baholanadi va yillik 11,5% o'sadi. Asosiy omillar — bulutga migratsiya, mikroxizmatlar sonining oshishi va mobil dasturlar va veb-xizmatlarda foydalanuvchi tajribasi sifatiga talablarning ortishi.
Zamonaviy APM birgalikda dastur holatining to'liq manzarasini tashkil etuvchi uch turdagi ma'lumotlarga asoslanadi. Metrikalar — sonli agregatlardir: javob vaqti, so'rovlar soni, xatolar foizi. Ular \u201cnima bo'lyapti\u201d degan savolga javob beradi va chegara qiymatlari bo'yicha ogohlantirishlarni sozlash imkonini beradi.
Kuzatish (distributed tracing) \u201cbu nima uchun sodir bo'lyapti\u201d degan savolga javob beradi. Har bir kiruvchi so'rov barcha mikroxizmatlar, ma'lumotlar bazalari va tashqi chaqiruvlar orqali kuzatiladi. APM tizimi metrikalar va kuzatishni birlashtiradi: agar javob vaqti metrikasi oshsa, ishlab chiqaruvchi kuzatish paneliga o'tadi va sekinlashishga sabab bo'lgan aniq so'rovni har bir xizmat bo'yicha taqsimot bilan ko'radi.
Loglar kontekstni ta'minlaydi — aniq xato xabari, o'zgaruvchining qiymati, chaqiruv steki. Zamonaviy APM platformalari (Datadog, New Relic, Grafana) loglarni kuzatishlar bilan umumiy trace_id orqali bog'lab, metrika grafigidan aniq so'rovning logiga o'tish imkonini beradi. Datadog (2025) ma'lumotlariga ko'ra, loglarning kuzatishlar bilan korrelyatsiyasi hodisa diagnostikasining o'rtacha vaqtini 45 daqiqadan 12 daqiqagacha qisqartiradi.
| Signal | Savol | Birlik |
|---|---|---|
| Metrikalar | Nima bo'lyapti? | Sonli agregatlar |
| Kuzatish | Bu nima uchun sodir bo'lyapti? | Spanlar va kuzatishlar |
| Loglar | Aniq nima noto'g'ri ketdi? | Matn yozuvlari |
Klassik APM arxitekturasi uch darajadan iborat: agent, kollektor va backend. Agent — dasturga kiritilgan yoki uning yonida ishga tushiriladigan (sidecar) kutubxona. Agent kiruvchi va chiquvchi chaqiruvlarni ushlaydi, bajarilish vaqti haqida ma'lumotlarni yig'adi va ularni xavfsiz kanal orqali kollektorga yuboradi.
Java uchun APM agenti JVM darajasida javaagent orqali ulanishi mumkin, barcha HTTP so'rovlarini, ma'lumotlar bazasi chaqiruvlarini, xabar navbatlarini va tashqi API-larni avtomatik instrumentatsiya qiladi. Mobil platformalar uchun agent SDK sifatida ulanadi va qurilmadan metrikalar yig'adi. New Relic Agent Android uchun, masalan, OkHttp, HTTP mijozlari va WebView orqali barcha tarmoq so'rovlarini avtomatik kuzatadi.
import com.newrelic.agent.android.NewRelic;
public class MainApplication extends Application {
public void onCreate() {
super.onCreate();
NewRelic.withApplicationToken("YOUR_TOKEN")
.start(this);
}
}
Kod Android dasturida New Relic Agent-ni ishga tushiradi. Ishga tushirilgandan so'ng, agent har bir ekranning qo'shimcha instrumentatsiyasisiz avtomatik ravishda tarmoq so'rovlari metrikalarini, xatolarni, ANR va UI samaradorlik ma'lumotlarini yig'adi. Agent fon oqimida ishlaydi va dasturning asosiy interfeysi samaradorligiga ta'sir qilmaydi.
Kollektor minglab agentlardan ma'lumotlarni qabul qiladi, metrikalarni agregatsiya qiladi, kuzatishlarni tanlab olishni amalga oshiradi va ma'lumotlarni issiq va sovuq saqlash imkoniyati bilan uzoq muddatli omborda saqlaydi. APM backend-i panellar, ogohlantirishlar, xizmat xaritalari va tashqi tizimlar bilan (Slack, PagerDuty, Jira, ServiceNow) integratsiya uchun API taqdim etadi. Datadog soniyada 10 milliondan ortiq ma'lumot nuqtasini o'z kollektorlari orqali qayta ishlaydi, 20+ dunyo mintaqasida joylashib, minimal uzatish kechikishini ta'minlaydi.
Apdex (Application Performance Index) — foydalanuvchilarning dasturning javob vaqtidan qoniqishini o'lchash uchun ochiq standart. Apdex qiymati formula bo'yicha hisoblanadi: (qoniqqan foydalanuvchilar soni + toqatli foydalanuvchilar soni / 2) / umumiy foydalanuvchilar soni. Natija 0 dan 1 gacha bo'lgan raqam, bu yerda 1 barcha foydalanuvchilar qoniqqanligini anglatadi.
Apdex chegaralari har bir dastur uchun individual o'rnatiladi. Mobil dasturlar uchun odatiy qoniqish chegarasi — 1,5 soniyagacha javob vaqti, toqatli — 4,5 soniyagacha. 4,5 soniyadan oshgan hamma narsa qabul qilib bo'lmaydigan deb hisoblanadi. Apdex score 0,94 va undan yuqori ishlab chiqarish muhiti uchun ajoyib ko'rsatkich hisoblanadi.
Apdex nafaqat sifat metrikasi, balki ogohlantirishlar uchun chegara sifatida ham ishlatiladi. Agar Apdex 10 daqiqa davomida 0,85 dan pastga tushsa, APM tizimi navbatchi guruhga xabar yuboradi. Bu mutlaq javob vaqti qiymatlariga bog'lanishdan ko'ra muvozanatliroq yondashuv, chunki ular kun vaqti va yuklamaga qarab o'zgarishi mumkin.
Mobil APM o'ziga xoslikka ega: dastur foydalanuvchining qurilmasida ishlaydi, u turli tarmoq sharoitlarida bo'lishi, har xil miqdorda bo'sh xotira va OT versiyasiga ega bo'lishi mumkin. Mobile APM barcha bu omillarni hisobga olishi va metrikalarni qurilma modellari, OT versiyalari, mintaqalar va aloqa operatorlari bo'yicha taqsimotini taqdim etishi kerak.
Mobil APM agentlari qurilmada metrikalarni yig'adi va ularni 1–5 daqiqa oralig'ida paketlar (batch) bilan serverga yuboradi. Bu foydalanuvchi trafigiga ta'sirni minimallashtiradi. Ulanish yo'qolgan taqdirda, ma'lumotlar mahalliy keshda saqlanadi va keyingi ulanishda yuboriladi. Firebase Performance va Dynatrace Mobile tarmoq yo'qolganida avtomatik qayta uzatishni qo'llab-quvvatlaydi.
Mobil ishlanmada standart APM metrikalariga o'ziga xos bo'lganlar qo'shiladi: sovuq ishga tushirish vaqti, aylantirishda FPS, iste'mol qilingan xotira hajmi, ANR chastotasi (Android) va watchdog tugatishlar soni (iOS). New Relic Mobile qo'shimcha ravishda map views, keshdan foydalanish foizi va aniq ViewController-larning render vaqtini kuzatadi.
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-dagi kod foydalanuvchi profili ekrani uchun interaction trace yaratadi. New Relic avtomatik ravishda ma'lumotlarni yuklash vaqtini, UI renderini va ushbu ekran ko'rsatilishi paytida bajarilgan barcha tarmoq so'rovlarini o'lchaydi.
APM bozori monitoring chuqurligi, narxi va qo'llab-quvvatlanadigan platformalar bilan farqlanadigan o'nlab yechimlar bilan taqdim etilgan. Datadog APM metrikalar, kuzatishlar va loglarni yagona interfeysda integratsiya qilish bo'yicha yetakchi. New Relic mobil platformalar uchun eng batafsil kuzatishni taklif qiladi. Dynatrace muammolarning ildiz sabablarini avtomatik aniqlash uchun Davis AI mexanizmidan foydalanadi.
| Platforma | Mobil agent | Distributed tracing | Bepul tarif |
|---|---|---|---|
| Datadog | iOS, Android | Ha | Yo'q |
| New Relic | iOS, Android | Ha | 100 GB/oy |
| Dynatrace | iOS, Android | Ha | 15 kun |
| Grafana | OpenTelemetry orqali | Ha | Ha (OSS) |
APM platformasini tanlash jamoaning kattaligi, texnologiya to'plami va byudjetga bog'liq. Startaplar uchun Firebase Performance backend uchun Grafana bilan kombinatsiyada optimal. Yuqori SLA talablari bo'lgan enterprise loyihalar uchun — Datadog yoki Dynatrace to'liq observability vositalari to'plami va hodisalarning ildiz sabablarini AI tahlili qo'llab-quvvatlashi bilan.
Ko'p beriladigan savollar
Oddiy monitoring infratuzilma metrikalarini kuzatadi: CPU, xotira, disk. APM dastur darajasiga qaraydi: aniq tranzaksiyalarning bajarilish vaqti, SQL so'rovlari, mikroxizmatlar orasidagi HTTP chaqiruvlari. APM CPU normal ekanligini, ammo dastur ma'lumotlar bazasiga sekin so'rov tufayli sekinlashayotganini ko'rsatishi mumkin.
Bitta xizmat uchun standart monitoring + loglash asosiy qoplash uchun yetarli. APM xizmatlar soni 5 va undan ko'p bo'lganda va so'rov bir foydalanuvchi ssenariysida ularning bir nechtasidan o'tganda zarur bo'ladi. APM qaysi xizmat butun so'rov oqimini sekinlashtirayotgani va tor joy qayerda ekanligiga javob beradi.
APM agentlari serverda 1–3% CPU va 50–200 MB xotira iste'mol qiladi. Litsenziya narxi oyiga host uchun 15 dan 80 dollargacha o'zgaradi. Telemetriya trafigi kuzatish intensivligiga qarab kuniga host uchun 1–10 GB ni tashkil qiladi. OpenTelemetry + Grafana — tijorat APM-larga bepul alternativ.
Ha, mobil APM agentlari avtonom ishlaydi. Ular dasturning server qismi bo'lmasa ham qurilmada metrikalar yig'adi: ishga tushirish vaqti, FPS, crashlar, tashqi API-larga tarmoq so'rovlari. Ma'lumotlar qurilma internetga ulanganda APM platformasiga yuboriladi.
APM ning asosiy konfiguratsiyasi (chegaralar, panellar, ogohlantirishlar) bir marta o'rnatiladi va arxitektura o'zgarishi yoki samaradorlik benchmark testlaridan so'ng tuzatiladi. Agent configuration dasturni qayta chiqarish yoki kodni o'zgartirish zaruratisiz APM platformasining boshqaruv paneli orqali avtomatik yangilanadi.
Xulosa
Biz kalit topshirig'i bilan mobil ilovani ishlab chiqamiz
IT Sectr 2017-yildan beri startaplar va korxonalar uchun iOS va Android ilovalarini yaratadi. Biz sizga maslahat beramiz va eng yaxshi yechimni taklif qilamiz.