Loggen en monitoren in mobiele ontwikkeling: essentie, tools en hoe in te stellen

Auteur: IT Sectr Gepubliceerd: 2026-05-27 Leestijd: 8 min

Loggen en monitoren zijn twee pijlers van de stabiliteit van mobiele applicaties. Volgens Gartner (2025) zal de markt voor APM-oplossingen in 2027 $8 miljard bereiken. Correct loggen stelt niet alleen in staat bugs te vinden, maar ook problemen te voorspellen voordat ze gebruikers beïnvloeden.

Belangrijkste punten

  • Op iOS zijn de belangrijkste tools os_log (ingebouwde systeemlogging) en CocoaLumberjack (flexibele bibliotheek met rotatie en formattering). Monitoring op iOS maakt real-time prestatiecontrole mogelijk.
  • Op Android is de standaard Timber (een wrapper over Logcat) en de systeem-Log. Timber voegt automatisch de classtag in en beheert logniveaus.
  • Structured logging — logs schrijven in JSON. Maakt automatische loganalyse mogelijk via ELK, Grafana of Datadog. Aanbevolen voor productie en automatische monitoring.
  • APM (Application Performance Monitoring) — een klasse tools voor monitoring van mobiele applicaties: New Relic, Datadog, Firebase Performance.
  • Logrotatie en remote logging zijn verplicht voor productie. Logs mogen het apparaatgeheugen niet vullen en moeten op afstand toegankelijk zijn voor de ontwikkelaar.

Loggen en monitoren op iOS: os_log en CocoaLumberjack

Mobiele applicatielogging op iOS is gebaseerd op os_log — het ingebouwde Apple-systeem, beschikbaar sinds iOS 10. os_log schrijft logs naar één systeemlog (op het apparaat of via Console.app), ondersteunt categorieën, niveaus en privacytags. De combinatie van loggen en monitoren op iOS via Console.app en xcrun maakt real-time fout- en prestatiebewaking mogelijk.

Log Level op iOS

os_log heeft niveaus: Default, Info, Debug, Error, Fault. In productie worden Error en Fault behouden — Debug en Info worden uitgeschakeld. Het kiezen van het juiste niveau is onderdeel van de strategie voor monitoring van mobiele applicaties op iOS. Privacy: %{public}@ voor onbeschermde gegevens, %{private}@ voor persoonlijke gegevens.

CocoaLumberjack

CocoaLumberjack is een populaire bibliotheek voor iOS-logging. In tegenstelling tot os_log ondersteunt het aangepaste formaten, asynchroon schrijven en logrotatie. DDLog, DDTTYLogger (console), DDFileLogger (bestand met rotatie). Voor remote monitoring kan CocoaLumberjack worden gecombineerd met os_log — schrijf naar een bestand voor remote logging en naar os_log voor Console.app.

Loggen en monitoren op Android: Timber en Log Level

Voor mobiele applicatielogging op Android wordt Timber gebruikt — een bibliotheek van Jake Wharton die de standaard voor het platform is geworden. Timber is een wrapper over Android Log (Logcat) die automatisch de classtag toevoegt en Tree configureert. Timber maakt deel uit van het Android-monitoringsysteem voor mobiele applicaties: DebugTree voor debuggen, CrashlyticsTree voor het verzenden van gegevens.

Timber in detail

Timber gebruikt Tree — een component die beslist wat er met de log gebeurt. In debug-builds DebugTree (uitvoer naar Logcat), in release — CrashlyticsTree (crashes verzenden). Timber.wtf() logt fatale fouten. Timber.tag("CustomTag") overschrijft de tag. Voor effectieve monitoring wordt Timber gecombineerd met APM-tools.

Log Level op Android

Android Log heeft niveaus: VERBOSE, DEBUG, INFO, WARN, ERROR, ASSERT. ProGuard/R8 verwijdert Log.d en Log.v in release — Timber maakt loggen via Plant mogelijk. De niveaukeuze beïnvloedt de kwaliteit van de mobiele applicatiemonitoring — in productie worden WARN en ERROR behouden.

Tool Platform Formaat Rotatie Remote Complexiteit
os_logiOSGestructureerdSysteemConsole.appLaag
CocoaLumberjackiOSTekst/JSONDDFileLoggerJa (aangepast)Gemiddeld
TimberAndroidTekstLogcat/AangepastTreeLaag
SentryiOS/AndroidJSONServerJaGemiddeld
LogcatAndroidTekstBufferADBLaag

Houd bij het kiezen van een loggingtool rekening met: of remote logging nodig is, hoe vaak logs veranderen en wie ze zal analyseren. Voor startups zijn os_log of Timber voldoende. Voor bedrijven — CocoaLumberjack met serververzending. Bij IT Sectr gebruiken we de combinatie Timber + Crashlytics voor Android en os_log + CocoaLumberjack voor iOS.

Structured Logging

Structured logging — logs schrijven in JSON-formaat in plaats van platte tekst. Voorbeeld: in plaats van "User login failed" schrijven we {"event": "login_failed", "user_id": 123, "reason": "invalid_password"}. Dit is de basis voor automatische monitoring — de ELK-stack en Grafana filteren, aggregeren en analyseren dergelijke gegevens.

Voordelen van structured logging

Filteren op velden: vind alle logs met event=crash van het afgelopen uur. Aggregatie: maak een grafiek van het aantal fouten per app-versie. Integratie met ELK (Elasticsearch, Logstash, Kibana) of Grafana. Structured logging is niet verplicht voor eerste releases, maar wordt cruciaal wanneer de DAU boven de 10.000 komt.

Remote Logging en Logrotatie

Remote logging — het verzenden van logs van het apparaat naar een server voor gecentraliseerde monitoring. Geïmplementeerd via aangepaste Tree (Android) of HTTP-verzoeken. Stuur alleen Error en Warning — verspil geen gebruikersverkeer. Logrotatie: DDFileLogger (iOS) elke 1 MB of 1 dag. Op Android is de Logcat-buffer beperkt.

APM en monitoring van mobiele applicaties: Sentry, New Relic, Datadog

Application Performance Monitoring (APM) — een klasse tools voor monitoring van mobiele applicaties. APM meet: opstarttijd, netwerkverzoeken, FPS, geheugengebruik, crashfrequentie. Hoofdspelers: Sentry (Performance), New Relic Mobile, Datadog Mobile.

Sentry Performance

Sentry — niet alleen crashrapportage, maar ook prestatiemonitoring. Sentry Performance creëert gedistribueerde traces die laten zien hoe lang elke fase duurde: van het indrukken van een knop tot de serverrespons. Ondersteunt iOS, Android, Flutter, React Native. Gratis tot 5k gebeurtenissen per maand.

New Relic en Datadog

New Relic Mobile biedt metrieken: aantal sessies, tijd in de app, crashfrequentie, netwerkverzoeken. Datadog Mobile is een modernere tool met real-time dashboards en alerts. Beide zijn betaald, maar hebben gratis niveaus. IT Sectr raadt aan om met Firebase Performance te beginnen en over te stappen op betaalde APM wanneer de DAU boven de 100.000 komt.

Firebase Performance

Firebase Performance — een gratis tool voor monitoring van mobiele applicaties van Google. Verzamelt automatisch metrieken: app-opstarttijd, HTTP-verzoeken (URL, methode, responscode), FPS. Gebruik de Trace API voor aangepaste tracing. Integratie: voeg de SDK toe aan build.gradle (Android) of Podfile (iOS).

Trace en metrieken

Trace — een tijdssegment met begin en einde dat u meet. Voorbeeld: trace = FirebasePerformance.getInstance().newTrace("checkout_process"). Metrieken — numerieke indicatoren (responsgrootte, aantal items). Firebase Performance heeft geen serverinfrastructuur nodig — alle gegevens gaan via de Firebase SDK. Bij het monitoren van mobiele applicaties biedt de Trace API context voor prestatieanalyse.

Veelgestelde vragen

Welke logniveaus bestaan er en wanneer moeten ze worden gebruikt?

Standaardniveaus: ERROR (kritieke fouten), WARN (potentiële problemen), INFO (belangrijke gebeurtenissen), DEBUG (debuggen), VERBOSE (gedetailleerde tracing). In productie worden ERROR, WARN en INFO behouden, de rest wordt uitgeschakeld.

Hoe verschilt Timber van Logcat op Android?

Timber is een wrapperbibliotheek over Logcat van Jake Wharton voor mobiele applicatielogging op Android. Het voegt automatisch de classtag in, configureert Tree en schakelt logs in productie uit met één regel code.

Wat is APM en waarom heeft een mobiele app het nodig?

APM (Application Performance Monitoring) — een klasse tools voor het volgen van prestaties: opstarttijd, netwerkverzoeken, geheugengebruik, crashfrequentie. Bij het monitoren van mobiele applicaties helpen New Relic, Datadog en Firebase Performance knelpunten te vinden voordat gebruikers klagen.

Moet een startup betaalde APM-oplossingen gebruiken?

Voor een startup is Firebase Performance voldoende — een gratis tool voor monitoring van mobiele applicaties. New Relic en Datadog worden aangesloten wanneer gedetailleerde tracing en aangepaste dashboards nodig zijn. IT Sectr raadt aan om met Firebase te beginnen en over te stappen op betaalde oplossingen wanneer de DAU boven de 100.000 komt.

Wat is structured logging en waarin is het beter dan platte tekst?

Structured logging is een logformaat in JSON of sleutel-waarde in plaats van platte tekst. Het maakt het mogelijk logs te filteren op velden, grafieken te maken en automatisch te analyseren in ELK of Grafana. Zonder gestructureerde logs is het moeilijk patronen te vinden in duizenden records.

Samenvatting

  • os_log — de basis-tool voor loggen en monitoren op iOS. CocoaLumberjack voegt flexibiliteit, rotatie en remote logging toe.
  • Timber — de standaard voor mobiele applicatielogging op Android. DebugTree voor debuggen, CrashlyticsTree voor release.
  • Structured logging (JSON) is nodig voor automatische loganalyse. Integreert met ELK, Grafana, Datadog.
  • APM — Sentry Performance, New Relic, Datadog. Firebase Performance — gratis tool voor monitoring van mobiele applicaties voor startups.
  • Logrotatie voorkomt geheugenoverloop van het apparaat. Configureer DDFileLogger (iOS) of gebruik de Logcat-buffer (Android).
  • Remote logging — stuur alleen Error- en Warning-logs. Alle logs verbruiken gebruikersverkeer.
  • Trace API en breadcrumbs (Sentry) bieden context voor monitoring van mobiele applicaties, waardoor logs worden omgezet in een incidentverhaal.

We ontwikkelen een mobiele applicatie turnkey

IT Sectr creëert sinds 2017 iOS- en Android-applicaties voor startups en bedrijven. We adviseren u en stellen de beste oplossing voor.

Bespreek het project