APM: шта је то, метрике и како ради

Аутор: IT Sectr Објављено: 2026-05-29 Време читања: 8 мин

APM (Application Performance Monitoring) — је свеобухватан приступ посматрању перформанси софтвера, који укључује прикупљање метрика, праћење захтева и дијагностику грешака у реалном времену. Према подацима Gartner IT Glossary, 2024, APM обједињује три кључна правца: праћење корисничког искуства, откривање кварова у архитектури апликације и аналитику података извршења за дубинску дијагностику инцидената.

Главне тачке

  • APM — Application Performance Monitoring, систем за праћење перформанси апликација на свим нивоима: клијент, мрежа, сервер, инфраструктура.
  • Три стуба APM-а — метрике, праћење и логови, обједињени у јединствену observability платформу за свеобухватну анализу инцидената.
  • Agent-based APM — инсталација софтверског агента на сервер апликације за прикупљање детаљних података о времену извршења.
  • Service map — граф зависности између микросервиса, који се аутоматски гради на основу података праћења.
  • Apdex score — стандардизовани показатељ задовољства корисника временом одговора апликације.

Шта је APM у развоју

APM (Application Performance Monitoring) — је дисциплина управљања перформансама апликација, која обухвата прикупљање, визуелизацију и анализу података о раду софтвера. За разлику од тачкастог праћења појединачних метрика (CPU, меморија), APM пружа целовиту слику: како се апликација понаша из перспективе корисника, како њене компоненте међусобно делују и где настају уска грла.

Концепт APM-а се формирао 2010-их година са преласком са монолитних апликација на микросервисну архитектуру. Када је број сервиса премашио 10–15 јединица, традиционалне методе праћења су престале да функционишу — било је немогуће одредити који сервис је изазвао успоравање целог захтева. APM решења су решила овај проблем кроз distributed tracing и аутоматско изградњу мапе сервиса.

Према подацима Grand View Research (2024), тржиште APM-а се процењује на 8,2 милијарде америчких долара и расте 11,5% годишње. Главни покретачи — миграција у облак, пораст броја микросервиса и повећани захтеви за квалитетом корисничког искуства у мобилним апликацијама и веб сервисима.

Три стуба APM-а: метрике, праћење, логови

Модерни APM се заснива на три врсте података које заједно чине потпуну слику стања апликације. Метрике — су нумерички агрегати: време одговора, број захтева, проценат грешака. Оне одговарају на питање „шта се дешава“ и омогућавају подешавање упозорења на основу граничних вредности.

Праћење као везна карика

Праћење (distributed tracing) одговара на питање „зашто се ово дешава“. Сваки долазни захтев се прати кроз све микросервисе, базе података и спољне позиве. APM систем повезује метрике и праћење: ако је метрика времена одговора порасла, програмер прелази на контролну таблу трагова и види тачан захтев који је изазвао успоравање, са разлагањем по сваком сервису.

Логовање за дубину

Логови пружају контекст — конкретну поруку о грешци, вредност променљиве, стек позива. Модерне APM платформе (Datadog, New Relic, Grafana) повезују логове са траговима преко заједничког trace_id, омогућавајући прелазак са графикона метрике на лог конкретног захтева. Према подацима Datadog (2025), корелација логова са траговима скраћује просечно време дијагностике инцидента са 45 на 12 минута.

СигналПитањеЈединица
МетрикеШта се дешава?Нумерички агрегати
ПраћењеЗашто се ово дешава?Спанови и трагови
ЛоговиШта тачно није у реду?Текстуални записи

Архитектура APM-а: агенти и колектори

Класична APM архитектура се састоји од три нивоа: агент, колектор и бекенд. Агент — је библиотека која се уграђује у апликацију или покреће поред ње (sidecar). Агент пресреће долазне и одлазне позиве, прикупља податке о времену извршења и шаље их колектору преко заштићеног канала.

Рад APM агента

APM агент за Java се може повезати преко javaagent на нивоу JVM, аутоматски инструментишући све HTTP захтеве, позиве база података, редове порука и спољне API-је. За мобилне платформе, агент се повезује као SDK и прикупља метрике са уређаја. New Relic Agent за Android, на пример, аутоматски прати све мрежне захтеве кроз OkHttp, HTTP клијенте и WebView.

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

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

Код иницијализује New Relic Agent у Android апликацији. Након покретања, агент аутоматски прикупља метрике мрежних захтева, грешке, ANR и податке о перформансама UI без додатне инструментације сваког екрана. Агент ради у позадинској нити и не утиче на перформансе главног интерфејса апликације.

Колектор и бекенд

Колектор прима податке од хиљада агената, агрегира метрике, врши семпловање трагова и чува податке у дугорочном складишту са могућношћу топлог и хладног чувања. Бекенд APM-а пружа контролне табле, упозорења, мапе сервиса и API за интеграцију са спољним системима (Slack, PagerDuty, Jira, ServiceNow). Datadog обрађује преко 10 милиона тачака података у секунди кроз своје колекторе смештене у 20+ региона света за минимално кашњење преноса.

Apdex score и SLA праћења

Apdex (Application Performance Index) — отворени стандард за мерење задовољства корисника временом одговора апликације. Вредност Apdex-а се израчунава по формули: (број задовољних корисника + број толерантних корисника / 2) / укупан број корисника. Резултат је број од 0 до 1, где 1 значи да су сви корисници задовољни.

Праг Apdex-а се постављају индивидуално за сваку апликацију. За мобилне апликације, типичан праг задовољства — време одговора до 1,5 секунди, толерантно — до 4,5 секунди. Све што прелази 4,5 секунди сматра се неприхватљивим. Apdex score од 0,94 и више сматра се одличним показатељем за производно окружење.

Apdex се користи не само као метрика квалитета, већ и као праг за упозорења. Ако Apdex падне испод 0,85 током 10 минута, APM систем шаље обавештење дежурном тиму. Ово је уравнотеженији приступ од везивања за апсолутне вредности времена одговора, које могу да варирају у зависности од доба дана и оптерећења.

APM за мобилне апликације

Мобилни APM има своју специфику: апликација ради на уређају корисника, који може бити у различитим мрежним условима, имати различиту количину слободне меморије и верзију оперативног система. Mobile APM мора да узме у обзир све ове факторе и пружи разлагање метрика по моделима уређаја, верзијама оперативног система, регионима и оператерима комуникације.

Прикупљање података са уређаја

Мобилни APM агенти прикупљају метрике на уређају и шаљу их на сервер у пакетима (batch) у интервалу од 1–5 минута. Ово минимизира утицај на саобраћај корисника. У случају губитка везе, подаци се чувају у локалном кешу и шаљу при следећем повезивању. Firebase Performance и Dynatrace Mobile подржавају аутоматску ретрансмисију при губитку мреже.

Кључне мобилне метрике

Стандардним APM метрикама у мобилном развоју додају се специфичне: време хладног покретања, FPS при скроловању, количина потрошене меморије, учесталост ANR (Android) и број watchdog терминација (iOS). New Relic Mobile додатно прати map views, проценат коришћења кеша и време рендеровања конкретних ViewController-а.

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-у креира interaction trace за екран профила корисника. New Relic ће аутоматски измерити време учитавања података, рендеровања UI и свих мрежних захтева извршених током приказа овог екрана.

Поређење популарних APM платформи

Тржиште APM-а представљено је десетинама решења која се разликују по дубини праћења, цени и подржаним платформама. Datadog APM води по интеграцији метрика, трагова и логова у јединственом интерфејсу. New Relic нуди најдетаљније праћење за мобилне платформе. Dynatrace користи AI мотор Davis за аутоматско откривање основних узрока проблема.

ПлатформаМобилни агентDistributed tracingБесплатни тариф
DatadogiOS, AndroidДаНе
New ReliciOS, AndroidДа100 GB/мес
DynatraceiOS, AndroidДа15 дана
GrafanaПреко OpenTelemetryДаДа (OSS)

Избор APM платформе зависи од величине тима, технолошког стека и буџета. За стартапове је оптималан Firebase Performance у комбинацији са Grafanom за бекенд. За enterprise пројекте са високим захтевима за SLA — Datadog или Dynatrace са комплетним сетом observability алата и подршком за AI анализу основних узрока инцидената.

Често постављана питања

Чиме се APM разликује од обичног праћења сервера?

Обично праћење прати инфраструктурне метрике: CPU, меморија, диск. APM гледа на ниво апликације: време извршења конкретних трансакција, SQL упита, HTTP позива између микросервиса. APM може показати да је CPU нормалан, али апликација успорава због спорог упита ка бази података.

Да ли је APM потребан за један микросервис?

За један сервис довољно је стандардно праћење + логовање за основно покриће. APM постаје неопходан када је сервиса 5 и више, а захтев пролази кроз неколико њих у једном корисничком сценарију. APM даје одговор који сервис успорава цео ток захтева и где се налази уско грло.

Како APM утиче на цену инфраструктуре?

APM агенти троше 1–3% CPU и 50–200 MB меморије на серверу. Цена лиценци варира од 15 до 80 долара по хосту месечно. Телеметријски саобраћај износи 1–10 GB дневно по хосту у зависности од интензитета праћења. OpenTelemetry + Grafana — бесплатна алтернатива комерцијалним APM-овима.

Може ли се користити APM за мобилну апликацију без бекенда?

Да, мобилни APM агенти раде аутономно. Они прикупљају метрике на уређају, чак и ако апликација нема серверски део: време покретања, FPS, краш-ове, мрежне захтеве ка спољним API-јима. Подаци се шаљу у APM платформу када се уређај повеже на интернет.

Колико често треба ажурирати конфигурацију APM-а?

Основна конфигурација APM-а (прагови, контролне табле, упозорења) подешава се једном и коригује при промени архитектуре или бенчмарк тестова перформанси. Agent configuration се ажурира аутоматски преко панела управљања APM платформе без потребе за поновним објављивањем апликације или изменом кода.

Закључци

  • APM — свеобухватно решење за праћење перформанси апликација, које обједињује метрике, праћење и логове.
  • Distributed tracing — кључна разлика APM-а од класичног праћења, која омогућава праћење путање захтева кроз све микросервисе.
  • APM агенти се уграђују у апликацију и аутоматски прикупљају податке о времену извршења, HTTP захтевима и позивима база података.
  • Apdex score — стандардизована метрика задовољства корисника, израчуната на основу прагова времена одговора.
  • Mobile APM узима у обзир специфику уређаја: хладно покретање, FPS, ANR, мрежне услове и верзије оперативног система.
  • OpenTelemetry омогућава изградњу APM система без везивања за продавца, користећи отворени стандард прикупљања података.
  • Избор APM платформе одређује се размером пројекта: Firebase за стартапове, Datadog или Dynatrace за enterprise архитектуре са високим захтевима за observability.

Развићемо мобилну апликацију под кључ

IT Sectr креира iOS и Android апликације за стартапе и предузећа од 2017. године. Саветоваћемо вас и предложити најбоље решење.

Разговарајте о пројекту

Прочитајте такође