Bugsnag: apa itu, pelacakan kesalahan dan pengumpulan data

Penulis: IT Sectr Diterbitkan: 2026-05-29 Waktu membaca: 8 mnt

Bugsnag adalah platform monitoring kesalahan dan stabilitas aplikasi yang secara otomatis mendeteksi, mengelompokkan, dan memprioritaskan bug di lingkungan production dengan konteks diagnostik lengkap. Menurut Bugsnag Documentation, 2025, Bugsnag memproses 6 miliar peristiwa setiap bulan untuk lebih dari 7.000 klien, termasuk Airbnb, Lyft, Slack, dan PagerDuty.

Poin Utama

  • Bugsnag — platform error monitoring dengan pengelompokan kesalahan otomatis, prioritas berdasarkan severity dan integrasi CI/CD.
  • Stability Score — metrik proporsi sesi bebas kesalahan yang menunjukkan stabilitas keseluruhan aplikasi dalam persen.
  • Severity-based triage — pembagian kesalahan otomatis menjadi critical, warning dan info untuk memfokuskan tim pada hal yang paling penting.
  • Breadcrumbs — catatan urutan peristiwa sebelum kesalahan dengan dukungan atribut kustom dari pengembang.
  • Release tracking — menghubungkan kesalahan dengan versi aplikasi tertentu dan notifikasi otomatis saat jumlah crash meningkat setelah rilis.

Apa itu Bugsnag dalam pengembangan

Bugsnag adalah platform monitoring stabilitas aplikasi yang didirikan pada 2013 dan diakuisisi oleh SmartBear pada 2019. Perbedaan utama Bugsnag dari pesaing adalah fokus pada stabilitas sebagai metrik kunci produk, bukan hanya pada jumlah kesalahan. Platform menyediakan dashboard tunggal untuk iOS, Android, React Native, Flutter, web dan layanan backend.

Setiap kesalahan di Bugsnag mendapatkan penilaian severity otomatis (critical, warning, info) berdasarkan konteks: apakah terjadi crash aplikasi, apakah fungsi pembayaran terpengaruh, apakah kesalahan berulang untuk banyak pengguna. Tim tidak hanya melihat daftar bug, tetapi backlog yang diprioritaskan dengan indikasi dampak pada bisnis.

Menurut SmartBear (2024), tim yang menggunakan Bugsnag mengurangi waktu penyelesaian insiden rata-rata sebesar 40% berkat pengelompokan duplikat otomatis dan konteks lengkap setiap peristiwa. Platform terintegrasi dengan Slack, PagerDuty, Jira, GitHub dan GitLab untuk pembuatan tugas terkait kesalahan secara otomatis.

Stability Score dan prioritas otomatis

Stability Score — metrik kunci Bugsnag yang menunjukkan persentase sesi yang selesai tanpa kesalahan. Nilai dihitung sebagai rasio jumlah sesi tanpa crash terhadap total sesi dalam suatu periode. Skor 99,9% berarti 1 dari 1000 sesi mengandung kesalahan.

Ambang batas Stability Score terintegrasi dengan CI/CD: jika setelah penerapan versi baru skor turun di bawah ambang yang ditetapkan (misalnya 99,5%), Bugsnag secara otomatis memblokir rilis atau mengirim peringatan kritis ke Slack. Release health dashboard menunjukkan dinamika skor untuk setiap versi aplikasi, memungkinkan pelacakan dampak perubahan tertentu pada stabilitas.

Severity-based triage

Bugsnag menggunakan algoritma klasifikasi otomatis kesalahan ke dalam tiga tingkat severity. Critical — crash aplikasi, kesalahan dalam skenario pembayaran yang mempengaruhi lebih dari 5% pengguna. Warning — kesalahan non-fatal (handled exceptions) yang mempengaruhi fungsi individu. Info — log, peringatan prioritas rendah. Pendekatan ini mencegah „kelelahan peringatan", ketika ratusan notifikasi membuat tidak mungkin fokus pada masalah yang benar-benar kritis.

SeverityContohTindakan
CriticalCrash saat masuk aplikasiPemberitahuan segera
WarningKesalahan memuat avatarTugas di Jira untuk sprint berikutnya
InfoTime-out saat memindai QRLog tanpa pemberitahuan

Menghubungkan Bugsnag SDK untuk platform mobile

Instalasi Bugsnag SDK memakan waktu 5 menit: menambahkan dependensi dan inisialisasi dengan kunci API proyek. Bugsnag Android SDK mendukung Kotlin dan Java, secara otomatis menangkap pengecualian Java, ANR dan kesalahan Native (C/C++) melalui sinyal.

Konfigurasi di Android

SDK dihubungkan melalui Gradle dan diinisialisasi di Application.onCreate. Bugsnag secara otomatis mengumpulkan informasi perangkat: model, versi OS, memori bebas, tingkat baterai. Auto-notify aktif secara default dan mengirim semua pengecualian yang tidak tertangani ke server Bugsnag.

kotlin
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)
    }
}

Kode menginisialisasi Bugsnag SDK dengan pelacakan sesi otomatis dan waktu mulai maksimum 5 detik. Jika aplikasi tidak mulai dalam waktu ini, Bugsnag akan mencatat peristiwa „slow launch" sebagai peringatan.

Konfigurasi di iOS

Bugsnag iOS SDK mendukung Swift dan Objective-C, menangkap NSException, pengecualian Mach (SIGABRT, SIGSEGV) dan sinyal sistem operasi. SDK kompatibel dengan iOS 11+ dan SwiftUI, secara otomatis membuat breadcrumbs untuk semua peristiwa UI: klik, navigasi, gestur.

swift
import Bugsnag

class AppDelegate: UIResponder, UIApplicationDelegate {
    override func application(
        _ application: UIApplication,
        didFinishLaunchingWithOptions options: [UIApplication.LaunchOptionsKey: Any]?
    ) -> Bool {
        Bugsnag.start(withApiKey: "YOUR_API_KEY")
        // konfigurasi tambahan
        return true
    }
}

Kode dalam Swift menjalankan Bugsnag dengan konfigurasi minimal. Semua pengecualian yang tidak tertangani dan crash secara otomatis dikirim ke dashboard Bugsnag dengan konteks perangkat lengkap dan tumpukan panggilan.

Breadcrumbs di Bugsnag adalah log terstruktur dari peristiwa sebelum kesalahan. Setiap breadcrumb berisi cap waktu, tipe (navigation, request, state, error, manual) dan metadata arbitrer. Bugsnag secara otomatis mencatat breadcrumbs untuk peristiwa UI di iOS dan Android, perubahan status aplikasi (background, foreground) dan permintaan jaringan.

Pengembang dapat menambahkan breadcrumbs kustom untuk logika bisnis: „pengguna menambahkan produk ke keranjang", „permintaan pembuatan pesanan dikirim". Saat terjadi kesalahan semua breadcrumbs dari 30 detik terakhir dilampirkan ke peristiwa. Bugsnag juga mendukung „state" — kamus data arbitrer yang dikirimkan dengan semua kesalahan sesi.

kotlin
Bugsnag.leaveBreadcrumb(
    message = "Order created",
    metadata = mapOf(
        "order_id" to "ORD-12345",
        "total" to "49.99"
    ),
    type = BreadcrumbType.STATE
)

Bugsnag.setExtraData(
    "user_tier", "premium"
)

Kode meninggalkan breadcrumb tentang pembuatan pesanan dan mengatur informasi tambahan tentang tarif pengguna. Jika terjadi kesalahan di sesi ini, Bugsnag akan melampirkan konteks dengan nomor pesanan dan tipe pengguna.

Session tracking

Bugsnag secara otomatis menghitung jumlah sesi — setiap kali aplikasi dimulai dianggap sebagai sesi baru. Rasio sesi dengan kesalahan terhadap total sesi membentuk Stability Score. Session tracking diperhitungkan dalam penagihan: Bugsnag dilisensikan berdasarkan jumlah sesi yang dilacak, bukan volume kesalahan, yang membedakannya dari model pembayaran per peristiwa di Sentry dan pesaing.

Release tracking dan integrasi CI/CD

Release tracking — mekanisme menghubungkan setiap kesalahan dengan versi aplikasi tertentu dan commit di repositori. Bugsnag secara otomatis menentukan versi dari Info.plist (iOS) atau build.gradle (Android) dan menampilkan di dashboard jumlah kesalahan per versi. Ini memungkinkan untuk segera melihat apakah masalah diperkenalkan oleh rilis terakhir.

Jika setelah penerapan versi 2.4.1 jumlah kesalahan kritis meningkat 3 kali lipat dibandingkan 2.4.0, Bugsnag menandai versi ini sebagai „tidak stabil" dan mengirim peringatan. Integrasi CI/CD memungkinkan pemblokiran promosi build ke staging atau production jika Stability Score turun di bawah ambang batas. Plugin untuk Jenkins, GitHub Actions dan GitLab CI mengirimkan metrik stabilitas ke pipeline.

Menurut Bugsnag Stability Benchmark (2024), 68% kesalahan di aplikasi mobile diperkenalkan oleh versi baru, bukan bug yang sudah lama ada. Release tracking mengurangi waktu deteksi regresi dari jam menjadi beberapa menit setelah penerapan.

Perbandingan Bugsnag dengan Sentry dan Crashlytics

Di pasar error monitoring ada tiga pemain utama: Bugsnag, Sentry dan Firebase Crashlytics. Bugsnag menonjol dengan model harga berbasis sesi (bukan peristiwa), fokus pada Stability Score dan prioritas severity otomatis. Sentry menawarkan performance monitoring yang lebih dalam dengan distributed tracing dan kode sumber terbuka. Crashlytics — solusi gratis dengan fungsi dasar, terintegrasi dengan ekosistem Firebase.

FiturBugsnagSentryCrashlytics
Harga (mulai)Gratis hingga 5.000 sesiGratis hingga 5.000 peristiwaGratis
Performance monitoringTerbatasLengkap dengan distributed tracingTidak
SDK untuk FlutterYaYaTerbatas
Self-hostedTidakYa (open source)Tidak
Stability ScoreYa (metrik kunci)TidakTidak

Pilihan antara alat tergantung pada prioritas: jika indikator kunci adalah stabilitas aplikasi di production, Bugsnag memberikan metrik yang paling jelas. Jika analisis kinerja mendalam dengan distributed tracing diperlukan — Sentry. Untuk monitoring dasar gratis dengan integrasi ekosistem Google — Crashlytics.

Pertanyaan yang Sering Diajukan

Bagaimana Bugsnag menentukan severity kesalahan?

Algoritma mempertimbangkan tiga faktor: jenis pengecualian (crash atau handled), jumlah pengguna yang terkena dampak dan konteks skenario. Critical severity diberikan jika kesalahan terjadi di layar utama atau alur pembayaran dan mempengaruhi lebih dari 1% pengguna. Pengembang dapat mengganti severity secara manual melalui API atau konfigurasi SDK.

Apakah Bugsnag mendukung React Native dan Flutter?

Ya, Bugsnag menyediakan SDK untuk React Native (dengan dukungan new architecture) dan Flutter (kompatibilitas dengan Dart 3.x). Kedua SDK mendukung pengumpulan breadcrumbs otomatis untuk navigasi, permintaan jaringan dan status aplikasi, serta instrumentasi kustom untuk logika bisnis.

Bisakah Bugsnag diintegrasikan dengan Jira?

Ya, Bugsnag menyediakan integrasi dua arah dengan Jira: kesalahan baru dapat secara otomatis membuat tugas di Jira, dan penutupan tugas di Jira mengubah status kesalahan menjadi „resolved" di Bugsnag. Jira Cloud dan Jira Server (melalui Jira Connect) didukung.

Bagaimana Bugsnag mempengaruhi ukuran aplikasi?

SDK Bugsnag menambahkan sekitar 1,5 MB ke ukuran APK/IPA di build release. Ini lebih kecil dari Sentry (sekitar 2 MB) tetapi lebih besar dari Firebase Crashlytics (sekitar 0,8 MB). Disarankan untuk menghapus SDK dari build debug untuk mempercepat kompilasi, hanya menyisakannya untuk konfigurasi test dan release.

Bisakah Bugsnag digunakan untuk aplikasi backend?

Ya, Bugsnag mendukung bahasa backend: Ruby, Python, Node.js, Java, .NET, Go, PHP. Kesalahan backend ditampilkan di dashboard yang sama dengan kesalahan mobile, dengan pengelompokan berdasarkan layanan. Ini memungkinkan pelacakan stabilitas menyeluruh: jika API jatuh, pengembang dapat melihat apakah masalah terkait dengan klien atau server.

Kesimpulan

  • Bugsnag — platform error monitoring dengan penekanan pada metrik stabilitas dan prioritas kesalahan otomatis berdasarkan severity.
  • Stability Score — persentase sesi tanpa kesalahan, metrik kunci untuk mengevaluasi kualitas rilis dan CI/CD gating.
  • Severity-based triage secara otomatis membagi kesalahan menjadi critical, warning dan info, mencegah kelelahan peringatan.
  • Release tracking menghubungkan setiap kesalahan dengan versi aplikasi dan commit untuk deteksi regresi cepat.
  • SDK mendukung iOS, Android, React Native, Flutter, serta 9 bahasa backend dalam satu dashboard.
  • Model harga berbasis sesi membedakan Bugsnag dari pesaing dan membuatnya dapat diprediksi secara anggaran.
  • Bugsnag direkomendasikan untuk tim produk di mana stabilitas aplikasi adalah indikator bisnis kunci dan prioritas kesalahan dalam mode otomatis diperlukan.

Kami akan mengembangkan aplikasi seluler turnkey

IT Sectr membuat aplikasi iOS dan Android untuk startup dan bisnis sejak 2017. Kami akan memberi saran dan mengusulkan solusi terbaik.

Diskusikan proyek

Baca juga