Bugsnag is een platform voor het monitoren van fouten en applicatiestabiliteit dat automatisch bugs detecteert, groepeert en prioriteert in een productieomgeving met volledige diagnostische context. Volgens Bugsnag Documentation, 2025 verwerkt Bugsnag maandelijks 6 miljard gebeurtenissen voor meer dan 7.000 klanten, waaronder Airbnb, Lyft, Slack en PagerDuty.
Belangrijkste punten
Bugsnag is een platform voor het monitoren van applicatiestabiliteit, opgericht in 2013 en overgenomen door SmartBear in 2019. Het belangrijkste verschil van Bugsnag met concurrenten is de focus op stabiliteit als kerngetal van het product, niet alleen op het aantal fouten. Het platform biedt een uniform dashboard voor iOS, Android, React Native, Flutter, web en backend-diensten.
Elke fout in Bugsnag krijgt een automatische severity-beoordeling (critical, warning, info) op basis van context: of er een crash is opgetreden, of de betaalfunctie is getroffen, of de fout voor veel gebruikers wordt herhaald. Het team ziet niet alleen een lijst met bugs, maar een geprioriteerde backlog met vermelding van de impact op het bedrijf.
Volgens SmartBear (2024) verkorten teams die Bugsnag gebruiken de gemiddelde oplostijd van incidenten met 40% dankzij automatische groepering van duplicaten en volledige context van elke gebeurtenis. Het platform integreert met Slack, PagerDuty, Jira, GitHub en GitLab voor het automatisch aanmaken van taken gerelateerd aan fouten.
Stability Score — de belangrijkste metriek van Bugsnag die het percentage foutloos voltooide sessies weergeeft. De waarde wordt berekend als de verhouding tussen het aantal sessies zonder crashes en het totaal aantal sessies in een periode. Een score van 99,9% betekent dat 1 op de 1000 sessies een fout bevat.
Drempelwaarden van Stability Score zijn geïntegreerd met CI/CD: als na implementatie van een nieuwe versie de score onder de ingestelde drempel zakt (bijv. 99,5%), blokkeert Bugsnag automatisch de release of stuurt een kritieke melding naar Slack. Release health dashboard toont de scoredynamiek per app-versie, waardoor de impact van een specifieke wijziging op stabiliteit kan worden gevolgd.
Bugsnag gebruikt een algoritme voor automatische classificatie van fouten in drie severity-niveaus. Critical — app-crashes, fouten in betalingsscenario's die meer dan 5% van de gebruikers treffen. Warning — niet-fatale fouten (handled exceptions) die individuele functies beïnvloeden. Info — logs, meldingen met lage prioriteit. Deze aanpak voorkomt „alertmoeheid", wanneer honderden meldingen het onmogelijk maken om op echt kritieke problemen te focussen.
| Severity | Voorbeeld | Actie |
|---|---|---|
| Critical | Crash bij inloggen in de app | Onmiddellijke melding |
| Warning | Fout bij laden avatar | Taak in Jira voor volgende sprint |
| Info | Time-out bij QR-scanning | Loggen zonder melding |
Installatie van Bugsnag SDK duurt 5 minuten: toevoegen van afhankelijkheid en initialisatie met de API-sleutel van het project. Bugsnag Android SDK ondersteunt Kotlin en Java, onderschept automatisch Java-uitzonderingen, ANR en native (C/C++)-fouten via signalen.
SDK wordt via Gradle aangesloten en geïnitialiseerd in Application.onCreate. Bugsnag verzamelt automatisch apparaatinformatie: model, OS-versie, vrij geheugen, batterijniveau. Auto-notify is standaard ingeschakeld en stuurt alle onverwerkte uitzonderingen naar de Bugsnag-server.
import com.bugsnag.android.Bugsnag
import com.bugsnag.android.Configuration
class App : Application() {
override fun onCreate() {
super.onCreate()
val config = Configuration("YOUR_API_KEY")
config.autoTrackSessions = true
config.launchDurationMillis = 5_000
Bugsnag.start(this, config)
}
}
De code initialiseert Bugsnag SDK met automatische sessietracking en een maximale opstarttijd van 5 seconden. Als de app niet binnen deze tijd start, registreert Bugsnag de gebeurtenis „slow launch" als waarschuwing.
Bugsnag iOS SDK ondersteunt Swift en Objective-C, onderschept NSException, Mach-uitzonderingen (SIGABRT, SIGSEGV) en signalen van het besturingssysteem. SDK is compatibel met iOS 11+ en SwiftUI, maakt automatisch breadcrumbs aan voor alle UI-gebeurtenissen: klikken, navigatie, gebaren.
import Bugsnag
class AppDelegate: UIResponder, UIApplicationDelegate {
override func application(
_ application: UIApplication,
didFinishLaunchingWithOptions options: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
Bugsnag.start(withApiKey: "YOUR_API_KEY")
// aanvullende configuratie
return true
}
}
Code in Swift start Bugsnag met minimale configuratie. Alle onverwerkte uitzonderingen en crashes worden automatisch naar het Bugsnag-dashboard gestuurd met volledige apparaatcontext en call-stack.
Breadcrumbs in Bugsnag zijn een gestructureerd logboek van gebeurtenissen die aan de fout voorafgaan. Elke breadcrumb bevat een tijdstempel, type (navigation, request, state, error, manual) en willekeurige metadata. Bugsnag registreert automatisch breadcrumbs voor UI-gebeurtenissen in iOS en Android, statuswijzigingen van de app (background, foreground) en netwerkverzoeken.
De ontwikkelaar kan aangepaste breadcrumbs toevoegen voor bedrijfslogica: „gebruiker heeft product aan winkelwagen toegevoegd", „aanvraag voor ordercreatie verzonden". Bij een fout worden alle breadcrumbs van de laatste 30 seconden aan de gebeurtenis toegevoegd. Bugsnag ondersteunt ook „state" — een willekeurig gegevenswoordenboek dat met alle fouten van een sessie wordt meegestuurd.
Bugsnag.leaveBreadcrumb(
message = "Order created",
metadata = mapOf(
"order_id" to "ORD-12345",
"total" to "49.99"
),
type = BreadcrumbType.STATE
)
Bugsnag.setExtraData(
"user_tier", "premium"
)
De code laat een breadcrumb achter over het aanmaken van een order en stelt aanvullende informatie in over het tarief van de gebruiker. Bij een fout in deze sessie voegt Bugsnag context toe met het ordernummer en het gebruikerstype.
Bugsnag telt automatisch het aantal sessies — elke start van de app wordt als een nieuwe sessie beschouwd. De verhouding van sessies met fouten tot het totaal aantal sessies vormt de Stability Score. Session tracking wordt in rekening gebracht: Bugsnag wordt gelicentieerd op basis van het aantal gevolgde sessies, niet op basis van foutvolume, wat het onderscheidt van betalingsmodellen per gebeurtenis bij Sentry en concurrenten.
Release tracking — een mechanisme om elke fout te koppelen aan een specifieke app-versie en commit in de repository. Bugsnag bepaalt automatisch de versie uit Info.plist (iOS) of build.gradle (Android) en toont in het dashboard het aantal fouten per versie. Dit maakt direct zichtbaar of het probleem door de laatste release is geïntroduceerd.
Als na implementatie van versie 2.4.1 het aantal kritieke fouten 3 keer is gestegen ten opzichte van 2.4.0, markeert Bugsnag deze versie als „instabiel" en stuurt een melding. CI/CD-integratie maakt het mogelijk om promotie van een build naar staging of production te blokkeren als de Stability Score onder de drempel is gedaald. Plugins voor Jenkins, GitHub Actions en GitLab CI geven stabiliteitsmetrieken door aan de pipeline.
Volgens Bugsnag Stability Benchmark (2024) wordt 68% van de fouten in mobiele apps geïntroduceerd door nieuwe versies en zijn het geen lang bestaande bugs. Release tracking verkort de detectietijd van regressie van uren naar enkele minuten na implementatie.
Op de markt voor error monitoring zijn er drie belangrijke spelers: Bugsnag, Sentry en Firebase Crashlytics. Bugsnag onderscheidt zich door een prijsmodel op basis van sessies (niet gebeurtenissen), focus op Stability Score en automatische severity-prioritering. Sentry biedt diepere performance monitoring met distributed tracing en open source code. Crashlytics — een gratis oplossing met basisfuncties, geïntegreerd in het Firebase-ecosysteem.
| Kenmerk | Bugsnag | Sentry | Crashlytics |
|---|---|---|---|
| Prijs (start) | Gratis tot 5.000 sessies | Gratis tot 5.000 gebeurtenissen | Gratis |
| Performance monitoring | Beperkt | Volledig met distributed tracing | Nee |
| SDK voor Flutter | Ja | Ja | Beperkt |
| Self-hosted | Nee | Ja (open source) | Nee |
| Stability Score | Ja (kerngetal) | Nee | Nee |
De keuze tussen tools hangt af van prioriteiten: als de belangrijkste indicator de stabiliteit van de app in productie is, biedt Bugsnag de meest duidelijke metriek. Als diepgaande prestatieanalyse met distributed tracing nodig is — Sentry. Voor gratis basismonitoring met integratie in het Google-ecosysteem — Crashlytics.
Veelgestelde vragen
Het algoritme houdt rekening met drie factoren: type uitzondering (crash of handled), aantal getroffen gebruikers en scenariocontext. Critical severity wordt toegekend als de fout op het hoofdscherm of in de betalingsflow is opgetreden en meer dan 1% van de gebruikers heeft getroffen. De ontwikkelaar kan severity handmatig overschrijven via API of SDK-configuratie.
Ja, Bugsnag biedt SDK voor React Native (met ondersteuning voor new architecture) en Flutter (compatibiliteit met Dart 3.x). Beide SDK's ondersteunen automatische breadcrumb-verzameling voor navigatie, netwerkverzoeken en app-status, evenals aangepaste instrumentatie voor bedrijfslogica.
Ja, Bugsnag biedt bidirectionele integratie met Jira: een nieuwe fout kan automatisch een taak in Jira aanmaken, en het sluiten van een taak in Jira verandert de foutstatus naar „resolved" in Bugsnag. Jira Cloud en Jira Server (via Jira Connect) worden ondersteund.
Bugsnag SDK voegt ongeveer 1,5 MB toe aan de APK/IPA-grootte in een release-build. Dit is minder dan Sentry (ongeveer 2 MB) maar meer dan Firebase Crashlytics (ongeveer 0,8 MB). Het wordt aanbevolen om SDK uit debug-builds te verwijderen om compilatie te versnellen en alleen voor test- en releaseconfiguraties te behouden.
Ja, Bugsnag ondersteunt backend-talen: Ruby, Python, Node.js, Java, .NET, Go, PHP. Backend-fouten worden weergegeven in hetzelfde dashboard als mobiele fouten, gegroepeerd op services. Dit maakt end-to-end stabiliteitscontrole mogelijk: als de API uitvalt, ziet de ontwikkelaar of het probleem bij de client of server ligt.
Samenvatting
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.
Lees ook