Datadog je cloudová platforma pro pozorovatelnost, která kombinuje monitorování infrastruktury, APM, protokolování a digitální zkušenost v jednom rozhraní. Platforma sbírá v reálném čase metriky, trace a protokoly ze serverů, kontejnerů a mobilních zařízení, což týmům umožňuje rychle najít příčinu problémů. Podle Datadog, 2025, platforma denně zpracovává více než 2,5 petabajtu dat od tisíců klientů po celém světě. Pro mobilní vývojáře nabízí Datadog nativní SDK pro Android a iOS s automatickým sběrem metrik výkonu.
Hlavní body
Datadog je cloudová platforma pro monitorování a pozorovatelnost, spuštěná v roce 2010 Olivierem Pomelem a Alexisem Le-Quiocem. Platforma poskytuje jediný panel pro sběr metrik, protokolů a trace z infrastruktury, aplikací a uživatelských zařízení. Na rozdíl od bodových řešení Datadog kombinuje APM, protokoly, monitorování infrastruktury, Synthetic Monitoring a RUM v jednom produktu.
Architektura Datadogu je postavena na agentech – lehkých programech instalovaných na servery nebo vložených do aplikací. Agent sbírá data a odesílá je do cloudové infrastruktury Datadogu prostřednictvím šifrovaného připojení. Pro mobilní platformy nabízí Datadog nativní SDK fungující na Androidu (Kotlin, Java) a iOS (Swift, Objective-C).
Podle zprávy Gartner Magic Quadrant for APM and Observability (2024) byl Datadog uznán jako lídr v kategorii pozorovatelnosti s nejširší sadou integrovaných možností. Platformu používají společnosti jako Samsung, Adidas a Peloton pro denní monitorování milionů zařízení.
Pro mobilní týmy je Datadog obzvlášť cenný, protože umožňuje propojit výkon backendu s uživatelskou zkušeností na zařízení. Pokud API začne odpovídat pomaleji, Datadog ukáže nejen dobu odezvy serveru, ale také jak to ovlivnilo dobu načítání nebo vykreslování obrazovky na konkrétním modelu telefonu.
Infrastructure Monitoring sleduje metriky CPU, paměti, disku a sítě pro servery, kontejnery a Kubernetes clustery. APM (Application Performance Monitoring) sbírá trace pro každý požadavek procházející distribuovaným systémem a zobrazuje zpoždění v každé fázi. Log Management centralizuje všechny protokoly – od systémových po aplikační – s možností fulltextového vyhledávání a vytváření metrik na základě protokolů. Synthetic Monitoring simuluje uživatelské scénáře z různých geografických lokalit. Real User Monitoring (RUM) sbírá data ze skutečných uživatelských zařízení, včetně telefonů a tabletů.
Datadog používá model pay-as-you-go s rozdělením podle produktů: infrastrukturní hosty, APM hosty, protokoly (objem v gigabajtech), RUM sezení a Synthetic testy. Každý produkt je účtován zvlášť, což umožňuje platit pouze za používané funkce. Cena začíná od 15 dolarů za host měsíčně za monitorování infrastruktury a od 1 dolaru za 10 000 RUM sezení. Pro startupy je k dispozici program Datadog for Startups s kredity až 100 000 dolarů.
Application Performance Monitoring (APM) v Datadogu je systém distributed tracing, který sleduje každý požadavek od okamžiku vstupu do systému až po dokončení všech vnořených operací. APM automaticky instrumentuje populární frameworky a knihovny: Spring Boot, Django, Express.js, ASP.NET Core a další. Pro každý požadavek APM vytváří flame graph – vizuální reprezentaci doby provádění všech částí kódu.
Flame graph ukazuje, jak dlouho trvalo každé volání funkce nebo požadavek na externí službu. Pokud se metoda databáze provádí 2 sekundy místo očekávaných 200 milisekund, je to okamžitě vidět na grafu. Datadog APM podporuje OpenTelemetry – otevřený standard pro sběr telemetrie, který umožňuje připojit instrumentaci od libovolného kompatibilního poskytovatele.
Podle Benchling Engineering Blog (2024) migrace na Datadog APM umožnila týmu zkrátit dobu diagnostiky incidentů ze 45 minut na 8 minut díky automatické korelaci trace s protokoly a metrikami. Klíčovým scénářem je trace-to-log correlation: podle jednoho trace ID lze najít všechny protokoly týkající se konkrétního požadavku bez ručního vyhledávání.
Service Map je automaticky vytvořený grafický diagram všech služeb systému a jejich vzájemných propojení. Každá služba je zobrazena jako uzel a spojení mezi uzly ukazují, jaká volání probíhají mezi službami. Barva uzlu odráží zdravotní stav: zelená – normální provoz, žlutá – zvýšené zpoždění, červená – chyby. Service Map pomáhá rychle identifikovat, která služba je úzkým hrdlem, i bez předchozího studia architektury.
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 (RUM) v Datadogu sbírá data ze skutečných uživatelských zařízení – dobu načítání obrazovek, odezvu na dotyky, spotřebu paměti, frekvenci ANR (Application Not Responding) a míru pádů. RUM SDK pro Android a iOS je vloženo do aplikace a automaticky vytváří sezení, seskupující všechny události v rámci jedné uživatelské interakce.
Každé RUM sezení obsahuje sekvenci událostí: otevření obrazovky, stisknutí tlačítka, síťový požadavek, rolování. Pro každou událost Datadog zaznamenává časové razítko, trvání a technické charakteristiky zařízení: model, operační systém, verzi aplikace, typ připojení. To umožňuje filtrovat metriky podle konkrétních verzí a zařízení. Například lze vidět, že doba načítání vzrostla na Android 14 při použití konkrétního modelu Samsung.
RUM je úzce integrován s APM: pokud uživatelské sezení skončí chybou na platební obrazovce, Datadog automaticky zobrazí odpovídající trace z backendu. To urychluje diagnostiku 5-7krát ve srovnání s ručním párováním frontendových a backendových protokolů. Pro mobilní týmy RUM také poskytuje watchlist reporty – týdenní shrnutí zhoršení klíčových metrik.
Datadog RUM automaticky sbírá hlášení o pádech s úplným stacktrace včetně čísel řádků zdrojového kódu. Pro Android to funguje prostřednictvím integrace s ACRA nebo Firebase Crashlytics, pro iOS – přes PLCrashReporter. Každý pád je propojen s uživatelským sezením, což umožňuje reprodukovat sekvenci akcí vedoucích k pádu. RUM také sleduje ANR – jednu z nejkritičtějších událostí pro Android aplikace. Pokud aplikace neodpovídá déle než 5 sekund, Datadog zaznamená ANR a zobrazí úplný výpis vláken v okamžiku blokování UI.
Log Management v Datadogu centralizuje všechny protokoly aplikace a infrastruktury do jediného úložiště s fulltextovým vyhledáváním. Mobilní protokoly (analytické události, API chyby, telemetrie) jsou odesílány ze zařízení přes SDK a kombinovány s protokoly serveru pomocí společného identifikátoru. Datadog automaticky parsuje protokoly do strukturovaných polí: úroveň (INFO, WARN, ERROR), služba, host, časové razítko, zpráva.
Pro filtrování protokolů se používá vlastní dotazovací jazyk s podporou wildcard, regulárních výrazů a faset. Protokoly lze seskupovat podle šablon – Datadog automaticky detekuje opakující se vzory a zobrazuje je jako jeden cluster. To je zvláště užitečné při analýze tisíců protokolů z mobilních zařízení: stejné chyby jsou seskupeny a vývojář vidí ne 10 000 řádků, ale 10 clusterů s frekvencí výskytu.
Metrics jsou numerické časové řady sbírané v intervalu od 1 sekundy. Datadog podporuje tři typy metrik: gauge (aktuální hodnota), count (součet za interval) a rate (rychlost změny). Pro mobilní aplikace mohou vlastní metriky sledovat počet otevření obrazovky, dobu provádění klíčového obchodního scénáře nebo frekvenci použití konkrétní funkce. Vlastní metriky jsou odesílány prostřednictvím DogStatsD – protokolu kompatibilního se StatsD s rozšířeními Datadog.
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 pro Android a iOS poskytuje jednotnou sadu modulů: Core (inicializace), RUM (monitorování uživatelské zkušenosti), Logs (odesílání protokolů), Trace (sledování požadavků). Pro Android se SDK přidává přes Gradle, pro iOS – přes CocoaPods nebo Swift Package Manager. Po instalaci je SDK inicializován v Application.onCreate (Android) nebo v AppDelegate (iOS) s předáním client token, environment a názvu aplikace.
Pro automatické sledování síťových požadavků na Androidu se používá OkHttp Interceptor, na iOS – NSURLProtocol nebo URLSession delegate. Datadog také podporuje integraci s populárními HTTP klienty: Retrofit, Apollo GraphQL, Ktor, Alamofire. Po připojení Interceptoru je každý HTTP požadavek automaticky připojen k RUM sezení a APM trace, tvořící jednotný řetězec od klienta k serveru.
dependencies {
// Hlavní SDK a RUM modul
implementation "com.datadoghq:dd-sdk-android-core:2.15.0"
implementation "com.datadoghq:dd-sdk-android-rum:2.15.0"
// Integrace s OkHttp pro automatické sledování
implementation "com.datadoghq:dd-sdk-android-okhttp:2.15.0"
// NDK crash reporting
implementation "com.datadoghq:dd-sdk-android-ndk:2.15.0"
}
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 poskytuje grafický editor dashboardů, ve kterém lze kombinovat grafy metrik, tabulky protokolů, treemap distribuce chyb a SLO widgety. Dashboardy podporují proměnné šablon – například lze vytvořit jeden dashboard pro všechny služby a přepínat kontext pomocí rozbalovacího seznamu s názvem služby. Každý dashboard lze publikovat v režimu pouze pro čtení pro externí zainteresované strany prostřednictvím veřejného odkazu.
Systém Monitors (upozornění) umožňuje nastavit prahové podmínky pro libovolnou metriku: pokud latence překročí 500 ms déle než 5 minut – odešli upozornění do Slacku, PagerDuty nebo e-mailem. Datadog podporuje složené podmínky: „Pokud chyby 5xx > 1% a počet požadavků > 1000/min, zvyš prioritu na kritickou“. Pro mobilní týmy je zvláště užitečný monitor detekce regrese – Datadog automaticky porovnává aktuální metriku s historickou základní linií a upozorňuje při statisticky významném zhoršení.
Podle Gartner Peer Insights (2024) klesá průměrná doba řešení alertu (MTTR) u týmů používajících Datadog monitory s automatickou korelací o 35% v prvním měsíci po implementaci. Toho je dosaženo díky tomu, že každé upozornění obsahuje nejen podmínku spuštění, ale také odkazy na související dashboardy, protokoly a trace – vývojář nemusí přepínat mezi nástroji.
Často kladené otázky
Datadog se vyznačuje jednotnou platformou spojující metriky, protokoly, trace a RUM v jednom rozhraní. Na rozdíl od Grafana + Prometheus (pouze metriky) nebo ELK (pouze protokoly) poskytuje Datadog vestavěnou korelaci mezi všemi typy dat bez nutnosti ruční konfigurace integrací.
Cena začíná od 1 dolaru za 10 000 RUM sezení měsíčně. Pro malé projekty s 50 000 sezeními měsíčně budou náklady přibližně 5 dolarů. APM a protokoly jsou účtovány zvlášť. Pro startupy je k dispozici program Datadog for Startups s kredity až 100 000 dolarů na první rok.
Datadog SDK podporuje Android (API 21+, Kotlin a Java), iOS (iOS 13+, Swift a Objective-C) a React Native. Pro Flutter a Xamarin jsou k dispozici komunitní integrace. SDK je distribuováno přes Maven Central, CocoaPods a Swift Package Manager.
Datadog poskytuje Data Scrubbing – automatické odstraňování PII z protokolů a RUM dat. Lze nastavit maskovací pravidla: nahrazení e-mailu, telefonu a kreditních karet hashem nebo hvězdičkami. Data jsou šifrována při přenosu (TLS 1.3) a ukládání (AES-256).
Ano, lze připojit pouze modul Logs bez APM a RUM. V tomto případě platíte pouze za objem protokolů. Datadog účtuje každý produkt zvlášť, což umožňuje začít s jedním modulem a přidávat ostatní podle potřeby bez reintegrace.
Shrnutí
Vyvineme mobilní aplikaci na klíč
IT Sectr vytváří aplikace pro iOS a Android pro startupy a podniky od roku 2017. Poradíme vám a navrhneme nejlepší řešení.
Přečtěte si také