Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Penting
Visual Studio App Center dihentikan pada 31 Maret 2025, kecuali untuk fitur Analitik dan Diagnostik, yang akan terus didukung hingga 30 Juni 2026. Pelajari lebih lanjut.
Diagnostik App Center mendukung proses simbolisasi kerusakan kode tidak terkelola C/C++ dalam aplikasi Anda. Anda dapat melambangkan crash kode yang tidak dikelola yang berasal dari kode NDK Android Anda, dan crash kode yang tidak dikelola diformat sebagai minidump Breakpad yang diunggah melalui API Unggah Crash.
Menggunakan Breakpad dengan App Center
Breakpad adalah pustaka dan rangkaian alat yang membantu menghasilkan jejak tumpukan C dan C++. Jejak tumpukan ini dihasilkan dari minidump file yang diproduksi setelah Breakpad terintegrasi dengan proyek Anda.
Breakpad menawarkan panduan pemula untuk berintegrasi dengan aplikasi Linux, Windows, dan Mac .
Mengirim Catatan Kerusakan Breakpad ke Sentral Aplikasi
Android NDK
App Center menawarkan integrasi SDK untuk aplikasi Android menggunakan NDK untuk menjalankan kode yang tidak dikelola. Integrasi ini akan membuat minidump Breakpad dan secara otomatis mengunggahnya ke App Center untuk Anda.
Aplikasi Lain
Setelah Breakpad terintegrasi dengan aplikasi Anda, Anda dapat Mengunggah log crash Breakpad dan minidump ke App Center.
Melambangkan Crash Tidak Terkelola
Menghasilkan Muatan Simbol Breakpad
Untuk menghasilkan stack trace yang dapat dibaca dari minidump Breakpad, Diagnostik App Center memerlukan simbol.
Arsip simbol yang diunggah harus berisi .sym file, yang diproduksi menggunakan alat Breakpad dump_syms , atau .so file biner.
Membuat file .zip untuk diunggah
Ada dua cara bagi App Center untuk mengambil simbol yang diperlukan untuk simbolisasi. App Center dapat menghasilkannya dari biner asli yang digunakan dalam proyek Anda, atau Anda dapat mengunggah simbol Breakpad secara langsung.
Opsi 1: Unggah biner asli
Masukkan semua file .so dari direktori proyek obj/local/$ABI/ ke dalam file .zip.
Opsi 2: Unggah simbol Breakpad
- Ekspor simbol menggunakan toolchain Breakpad seperti yang dijelaskan dalam dokumentasi Breakpad di bawah bagian "Dapatkan simbol debugging".
- Buat file symbols.zip dengan struktur berikut:
Nota
Jika Anda mengunggah simbol dari macOS, maka Anda harus membersihkan simbol dari folder asing apa pun, misalnya __MACOS akan dihasilkan dan untuk menghapusnya, Anda dapat menggunakan zip -d <symbols.zip> __MACOSX/\*.
$ unzip -l symbols.zip
Archive: symbols.zip
Length Date Time Name
-------- ---- ---- ----
0 07-22-13 15:07 symbols/
0 07-22-13 15:07 symbols/libnative.so/
0 07-22-13 15:07 symbols/libnative.so/EAC901FB6DDCCE8AED89E1A8E4A58360/
12468 07-22-13 15:07 symbols/libnative.so/EAC901FB6DDCCE8AED89E1A8E4A58360/libnative.so.sym
0 07-22-13 15:07 symbols/libnative.so/FDC5C9E715C4F16408C0B78F95855BF0/
12467 07-22-13 15:07 symbols/libnative.so/FDC5C9E715C4F16408C0B78F95855BF0/libnative.so.sym
-------- -------
24935 6 files
Mengunggah Simbol ke Pusat Aplikasi
Simbol dapat diunggah melalui Portal App Center, API, atau CLI.
- Masuk ke App Center dan pilih aplikasi Anda.
- Di menu sebelah kiri, navigasikan ke bagian Diagnostik dan pilih Simbol.
- Di sudut kanan atas, klik Unggah simbol dan unggah file.
- Setelah simbol diindeks oleh App Center, crash akan dilambangkan untuk Anda.
Proses untuk mengunggah simbol melalui API melibatkan serangkaian tiga panggilan API: satu untuk mengalokasikan ruang di backend kami, satu untuk mengunggah file, dan satu untuk memperbarui status unggahan. Isi panggilan API pertama harus diatur symbol_type ke Breakpad.
-
POSTMemicu permintaan ke API symbol_uploads. Panggilan ini mengalokasikan ruang di backend kami untuk file Anda dan mengembalikan propertisymbol_upload_iddanupload_url.
curl -X POST 'https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/symbol_uploads' \
-H 'accept: application/json' \
-H 'X-API-Token: {API TOKEN}' \
-H 'Content-Type: application/json' \
-d '{JSON BODY}'
- Menggunakan properti
upload_urlyang dikembalikan dari langkah pertama, buat permintaanPUTdengan header:"x-ms-blob-type: BlockBlob"dan berikan lokasi file Anda di disk. Panggilan ini mengunggah file ke akun penyimpanan backend kami. Pelajari selengkapnya tentang header permintaan PUT Blob .
curl -X PUT '{upload_url}' \
-H 'x-ms-blob-type: BlockBlob' \
--upload-file '{path to file}'
- Buat
PATCHpermintaan ke API symbol_uploads menggunakan properti yang telahsymbol_upload_iddikembalikan dari langkah pertama. Dalam isi permintaan, tentukan apakah Anda ingin mengatur status unggahan kecommitted(berhasil menyelesaikan) proses pengunggahan, atauaborted(tidak berhasil diselesaikan).
curl -X PATCH 'https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/symbol_uploads/{symbol_upload_id}' \
-H 'accept: application/json' \
-H 'X-API-Token: {API TOKEN}' \
-H 'Content-Type: application/json' \
-d '{ "status": "committed" }'
Nota
API pengunggahan simbol tidak berfungsi untuk file yang lebih besar dari 256MB. Gunakan CLI App Center untuk mengunggah file-file ini. Anda dapat menginstal CLI App Center dengan mengikuti instruksi di repositori CLI App Center kami.
Mengabaikan simbol
Ketika App Center tidak memiliki semua file simbol untuk mensimbolikasi laporan crash semuanya, crash akan tercantum di tab Belum Terangkai Simbol. Simbol yang diperlukan dapat diunggah dari halaman ini, jika Anda memiliki akses ke simbol tersebut.
Jika Anda tidak dapat mengunggah simbol, Anda dapat menandainya sebagai Diabaikan dengan memilih baris dalam tabel dan mengklik tombol Abaikan versi . Tombol ini memberi tahu App Center untuk memproses kerusakan dan menyimbolkannya sepenuhnya dengan simbol yang tersedia di berkas. Setelah selesai diproses, mereka akan muncul di tab Kecelakaan yang sebagian telah disimbolkan. Crash baru yang juga bergantung pada ID simbol yang sama yang ditandai sebagai diabaikan akan melewati tab Tidak Simbolikasi saat masuk dan mengalir melalui sistem.