Datadog: шта је, мониторинг апликација и обсервабилност

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

Datadog је облачка платформа за опсервабилност која обједињује мониторинг инфраструктуре, APM, воџење и дигитално искуство у једном интерфејсу. Платформа прикупља метрике, трејсове и логове са сервера, контејнера и мобилних уређаја у реалном времену, омогућавајући тимовима да брзо пронађу корен проблема. Према Datadog, 2025, платформа дневно обрађује преко 2,5 петабајта података од хиљада клијената широм света. За мобилне програмере, Datadog нуди нативне SDK-ове за Android и iOS са аутоматским прикупљањем метрика перформанси.

Главно

  • Datadog је SaaS платформа опсервабилности са подршком за APM, логове, метрике и RUM.
  • APM прати перформансу сваког захтева кроз distributed tracing.
  • RUM (Real User Monitoring) прикупља податке о понашању реалних корисника у мобилним апликацијама.
  • Мобилни SDK Datadog-а подржава аутоматско праћење екрана и мрежних захтева.
  • Интеграција са CI/CD пајплајновима омогућава праћење утицаја издања на перформансу.

Шта је Datadog?

Datadog је облачка платформа за мониторинг и опсервабилност, покренута 2010. године од стране Оливијера Помела и Алексиса Ле-Киока. Платформа пружа јединствени панел за прикупљање метрика, логова и трејсова са инфраструктуре, апликација и корисничких уређаја. За разлику од појединачних решења, Datadog обједињује APM, логове, инфраструктурни мониторинг, Synthetic Monitoring и RUM у један производ.

Архитектура Datadog-а је изграђена на агентима – лаким програмима који се инсталирају на сервере или уграђују у апликације. Агент прикупља податке и шаље их у облачку инфраструктуру Datadog-а путем шифроване везе. За мобилне платформе, Datadog нуди нативне SDK-ове који раде на Android (Kotlin, Java) и iOS (Swift, Objective-C).

Према извештају Gartner Magic Quadrant for APM and Observability (2024), Datadog је препозната као лидер у категорији опсервабилности са најширим скупом интегрисаних могућности. Платформу користе компаније као што су Samsung, Adidas и Peloton за свакодневно праћење милиона уређаја.

За мобилне тимове, Datadog је посебно вредан јер омогућава повезивање перформанси бекенда са корисничким искуством на уређају. Ако API почне да одговара спорије, Datadog показује не само време одговора сервера, већ и како је то утицало на време покретања или исцртавање екрана на одређеном моделу телефона.

Кључни компоненте платформе

Infrastructure Monitoring прати метрике CPU, меморије, диска и мреже за сервере, контејнере и Kubernetes кластере. APM (Application Performance Monitoring) прикупља трејсове за сваки захтев који пролази кроз дистрибуирани систем и показује кашњења на свакој деоници. Log Management централизује све логове – од системских до применских – са могућношћу претраге пуног текста и креирања метрика на основу логова. Synthetic Monitoring симулира корисничке сценарије са различитих географских локација. Real User Monitoring (RUM) прикупља податке са реалних уређаја корисника, укључујући телефоне и таблете.

Модел цена

Datadog користи модел pay-as-you-go са поделом по производима: инфраструктурни хостови, APM хостови, логови (обим у гигабајтима), RUM сесије и Synthetic тестови. Сваки производ се наплаћује посебно, што омогућава плаћање само за кориштене могућности. Цена почиње од 15 долара по хосту месечно за инфраструктурни мониторинг и од 1 долара за 10.000 RUM сесија. За стартапове је доступан програм Datadog for Startups са кредитима до 100.000 долара.

Datadog APM и Distributed Tracing

Application Performance Monitoring (APM) у Datadog-у је систем distributed tracing-а који прати сваки захтев од тренутка уласка у систем до завршетка свих угнездених операција. APM аутоматски инструментира популарне оквире и библиотеке: Spring Boot, Django, Express.js, ASP.NET Core и друге. За сваки захтев, APM креира flame graph – визуелни приказ времена извршавања свих делова кода.

Flame graph показује колико времена је трајао сваки позив функције или захтев према спољној услузи. Ако се метода базе података извршава 2 секунде уместо очекиваних 200 милисекунди, то је одмах видљиво на графику. Datadog APM подржава OpenTelemetry – отворени стандард за прикупљање телеметрије, што омогућава повезивање инструментације од било којег компатибилног пружача.

Према Benchling Engineering Blog (2024), миграција на Datadog APM омогућила је тиму да скрати време дијагностике инцидената са 45 минута на 8 минута захваљујући аутоматској корелацији трејсова са логовима и метрикама. Кључни сценариј је trace-to-log correlation: по једном trace ID-у могу да се пронађу сви логови који се односе на одређени захтев, без ручног претрагивања.

Service Map и зависности

Service Map је аутоматски изграђен график свих сервиса система и њихових међусобних веза. Сваки сервис је приказан као чвор, а везе између чворова показују који позиви се одвијају између сервиса. Боја чвора одражава стање здравља: зелена – нормалан рад, жута – повећано кашњење, црвена – грешке. Service Map помаже да се брзо идентификује уско грло, чак и без претходног проучавања архитектуре.

java
import datadog.trace.api.Trace;
import io.opentelemetry.api.trace.Span;

public class PaymentService {

    @Trace(resourceName = "PaymentService.processPayment")
    public PaymentResult processPayment(Order order) {
        Span span = Tracer.buildSpan("validate.payment").start();
        try {
            PaymentGateway gateway = new PaymentGateway();
            PaymentResult result = gateway.charge(order.getAmount());
            span.setTag("payment.provider", "stripe");
            return result;
        } finally {
            span.close();
        }
    }
}

Real User Monitoring за мобилне апликације

Real User Monitoring (RUM) у Datadog-у прикупља податке са реалних уређаја корисника – време учитавања екрана, одзив на додире, потрошња меморије, учесталост ANR (Application Not Responding) и стопа падова. RUM SDK за Android и iOS се уграђује у апликацију и аутоматски креира сесије, групишући све догађаје у оквиру једне корисничке интеракције.

Свака RUM сесија садржи низ догађаја: отварање екрана, притискање дугмета, мрежни захтев, скроловање. За сваки догађај, Datadog бележи временску ознаку, трајање и техничке карактеристике уређаја: модел, оперативни систем, верзију апликације, тип везе. То омогућава филтрирање метрика по одређеним верзијама и уређајима. На примјер, може се видети да је време покретања порасло на Android 14 код кориштења одређеног модела Samsung.

RUM је чврсто интегриран са APM-ом: ако се корисничка сесија заврши грешком на екрану за плаћање, Datadog аутоматски приказује одговарајући трејс из бекенда. То убрзава дијагностику 5-7 пута у поређењу са ручним поклапањем фронтенд и бекенд логова. За мобилне тимове, RUM такође пружа извештаје watchlist – недељни резиме погоршања кључних метрика.

Подешавање RUM мониторинга грешака

Datadog RUM аутоматски прикупља извештаје о падовима са потпуним stacktrace-ом, укључујући бројеве линија изворног кода. За Android ово ради кроз интеграцију са ACRA или Firebase Crashlytics, за iOS – кроз PLCrashReporter. Сваки пад је повезан са корисничком сесијом, што омогућава репродукцију низа радњи који су довели до пада. RUM такође прати ANR – један од најкритичнијих догађаја за Android апликације. Ако апликација не одговара дуже од 5 секунди, Datadog бележи ANR и приказује потпуни испис нити у тренутку блокирања корисничког интерфејса.

Воџење и метрике инфраструктуре

Log Management у Datadog-у централизује све логове апликације и инфраструктуре у једном складишту са претрагом пуног текста. Мобилни логови (аналитички догађаји, API грешке, телеметрија) шаљу се са уређаја путем SDK-а и спајају са серверским логовима путем заједничког идентификатора. Datadog аутоматски рашчлања логове у структурирана поља: ниво (INFO, WARN, ERROR), сервис, хост, временска ознака, порука.

За филтрирање логова користи се сопствени језик упита са подршком за wildcard, регуларне изразе и фацете. Логови се могу груписати по шаблонима – Datadog аутоматски открива понављајуће обрасце и приказује их као један кластер. То је посебно корисно при анализи хиљада логова са мобилних уређаја: исте грешке се групишу, а програмер види не 10.000 редова, већ 10 кластера са учесталошћу појављивања.

Metrics су нумерички временски серије које се прикупљају у интервалу од 1 секунде. Datadog подржава три типа метрика: gauge (тренутна вредност), count (збир за интервал) и rate (брзина промене). За мобилне апликације, прилагођене метрике могу пратити број отварања екрана, време извршавања кључног пословног сценарија или учесталост кориштења одређене функције. Прилагођене метрике шаљу се путем DogStatsD – протокола компатибилног са StatsD-ом са Datadog проширењима.

kotlin
import com.datadog.android.Datadog
import com.datadog.android.log.Logger

class PaymentAnalytics {

    private val logger = Logger.Builder()
        .setDatadogLogsEnabled(true)
        .setNetworkInfoEnabled(true)
        .setBundleWithTraceEnabled(true)
        .build()

    fun trackCheckout(orderId: String, amount: Double) {
        logger.info(
            "Checkout initiated for order {orderId}",
            mapOf(
                "order.id" to orderId,
                "order.amount" to amount,
                "payment.method" to "credit_card"
            )
        )
    }
}

Интеграција Datadog SDK-а у мобилни пројекат

Datadog SDK за Android и iOS пружа јединствени скуп модула: Core (покретање), RUM (праћење корисничког искуства), Logs (слање логова), Trace (праћење захтева). За Android SDK се додаје путем Gradle-а, за iOS – путем CocoaPods или Swift Package Manager-а. Након инсталације, SDK се иницијализује у Application.onCreate (Android) или AppDelegate (iOS) са прослеђивањем client token-а, environment-а и назива апликације.

За аутоматско праћење мрежних захтева на Android-у користи се OkHttp Interceptor, на iOS-у – NSURLProtocol или URLSession delegate. Datadog такође подржава интеграцију са популарним HTTP клијентима: Retrofit, Apollo GraphQL, Ktor, Alamofire. Након повезивања Interceptor-а, сваки HTTP захтев се аутоматски везује за RUM сесију и APM трејс, формирајући јединствени ланац од клијента до сервера.

Конфигурација кроз Gradle (Android)

groovy
dependencies {
    // Основни SDK и RUM модул
    implementation "com.datadoghq:dd-sdk-android-core:2.15.0"
    implementation "com.datadoghq:dd-sdk-android-rum:2.15.0"
    // Интеграција са OkHttp за аутотрасинг
    implementation "com.datadoghq:dd-sdk-android-okhttp:2.15.0"
    // NDK crash reporting
    implementation "com.datadoghq:dd-sdk-android-ndk:2.15.0"
}

Иницијализација на iOS-у (Swift)

swift
import DatadogCore
import DatadogRUM
import DatadogLogs

@main class AppDelegate: UIResponder, UIApplicationDelegate {

    func application(
        _ application: UIApplication,
        didFinishLaunchingWithOptions: [UIApplication.LaunchOptionsKey: Any]?
    ) -> Bool {
        Datadog.initialize(
            with: DatadogConfiguration.builder(
                clientToken: "your_client_token",
                environment: "production"
            ).build()
        )
        RUM.enable(
            with: RUMConfiguration(applicationID: "your_rum_app_id")
        )
        return true
    }
}

Datadog контролне табле и обавештења

Datadog пружа графички уређивач контролних табли у којем се могу комбиновати графикони метрика, табеле логова, treemap расподеле грешака и SLO виџети. Контролне табле подржавају промењиве шаблона – на примјер, може се креирати једна контролна табла за све сервисе и пребацивати контекст путем падајуће листе са називом сервиса. Свака контролна табла може да се објави у read-only режиму за спољне заинтересоване стране путем јавног линка.

Систем Monitors (обавештења) омогућава постављање граничних услова за било коју метрику: ако латенција премашује 500 ms дуже од 5 минута – пошаљи обавештење у Slack, PagerDuty или на e-mail. Datadog подржава сложене услове: „Ако грешке 5xx > 1% и број захтева > 1000/мин, повећај приоритет на критичан“. За мобилне тимове, монитор детекције регресије је посебно користан – Datadog аутоматски пореди тренутну метрику са историјском базом и обавештава при статистички значајном погоршању.

Према Gartner Peer Insights (2024), просечно време решавања алерта (MTTR) код тимова који користе Datadog мониторе са аутоматском корелацијом смањује се за 35% у првом месецу након имплементације. То се постиже захваљујући томе што свако обавештење садржи не само услов окидања, већ и линк ка повезаним контролним таблама, логовима и трејсовима – програмер не мора да се пребацује између алата.

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

По чему се Datadog разликује од алтернатива?

Datadog се истиче јединственом платформом која обједињује метрике, логове, трејсове и RUM у једном интерфејсу. За разлику од Grafana + Prometheus (само метрике) или ELK (само логови), Datadog пружа уграђену корелацију између свих типова података без потребе за ручном подешавањем интеграција.

Колико кошта Datadog за мобилне пројекте?

Цена почиње од 1 долара за 10.000 RUM сесија месечно. За мале пројекте са 50.000 сесија месечно, трошкови ће бити око 5 долара. APM и логови се наплаћују посебно. За стартапове је доступан програм Datadog for Startups са кредитима до 100.000 долара у првој години.

Које платформе подржава мобилни SDK?

Datadog SDK подржава Android (API 21+, Kotlin и Java), iOS (iOS 13+, Swift и Objective-C) и React Native. За Flutter и Xamarin доступне су интеграције заједнице. SDK се дистрибуира путем Maven Central, CocoaPods и Swift Package Manager-а.

Како Datadog обрађује личне податке?

Datadog пружа Data Scrubbing – аутоматско уклањање PII-а из логова и RUM података. Могу се подесити правила маскирања: замена е-поште, телефона и кредитних картица хешем или звездицама. Подаци су шифровани у току преноса (TLS 1.3) и при складиштењу (AES-256).

Може ли се Datadog користити само за воџење?

Да, може се повезати само модул Logs без APM-а и RUM-а. У том случају плаћа се само за обим логова. Datadog наплаћује сваки производ посебно, што омогућава почетак са једним модулом и додавање осталих по потреби, без поновне интеграције.

Закључак

  • Datadog је јединствена платформа опсервабилности са APM, логовима, метрикама и RUM у једном интерфејсу.
  • APM са distributed tracing-ом приказује пуни пут сваког захтева кроз дистрибуирани систем.
  • RUM SDK за Android и iOS аутоматски прикупља метрике перформанси са реалних уређаја корисника.
  • Интеграција Datadog-а у мобилни пројекат траје 1-2 дана путем Gradle или CocoaPods.
  • Системски монитори са аутоматском корелацијом логова, метрика и трејсова смањују MTTR за 35%.
  • Service Map аутоматски изграђује граф зависности између сервиса и истиче проблематичне чворове.
  • Data Scrubbing осигурава заштиту личних података у складу са GDPR-ом и SOC 2.

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

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

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

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