Ikuti langkah-langkah berikut untuk mendiagnosis masalah klien iOS:
Inisialisasi layanan diagnosis
Sebelum menggunakan fungsi diagnosis, inisialisasikan terlebih dahulu.
#import <MPDiagnosis/MPDiagnoseAdapter.h>
[MPDiagnoseAdapter initDiagnose];Layanan diagnosis mendukung penarikan log melalui metode Sync atau Push. Kode untuk menginisialisasi layanan diagnosis bervariasi tergantung pada metode penarikan log yang digunakan.
Gunakan Layanan Mobile Sync (Sync)
Jika Anda menggunakan metode Sync untuk menarik log diagnostik, inisialisasikan layanan sebelum menggunakan fungsi diagnostik.
#import <MPDiagnosis/MPDiagnoseAdapter.h>
[MPDiagnoseAdapter initDiagnose];Gunakan Layanan Push Pesan (Push)
Integrasikan Layanan Push Pesan dan selesaikan konfigurasi iOS terlebih dahulu. Setelah menerima pesan yang didorong, panggil metode berikut:
#import <APLog/APLogMgr.h>
[[APLogMgr sharedInstance] handlePushDiagnosisCmd:[notification.userInfo objectForKey:@"content"]];Tindakan pencegahan pemutakhiran
Berkas Category dari kelas APLogUser tidak perlu ditambahkan sejak versi 10.1.32. Lapisan tengah telah mengimplementasikan pengemasan. Setelah pemutakhiran, periksa konfigurasi versi sebelumnya dalam proyek dan hapus jika ada. Berikut adalah konfigurasi yang harus dihapus dari versi baru.

Atur ID pengguna
Layanan diagnosis mengekstrak log berdasarkan ID Pengguna.
Atur ID pengguna dengan menggunakan fungsi
userIdselama implementasiMPaaSInterface.
Selama pergantian pengguna, yaitu ketika nilai yang dikonfigurasikan dalam fungsi
userIddariMPaaSInterfaceberubah, panggil fungsi berikut:[MPDiagnoseAdapter userChange];Untuk informasi lebih lanjut, lihat berkas
MPDiagnoseAdapter.hdi bawahMPDiagnosis.
Tulis log diagnosis
Panggil metode berikut untuk menulis log diagnosis pada tautan kritis Aplikasi:
/**
* Catat pesan dengan level kAPLogLevelInfo.
*
* @param message Objek NSString yang berisi string gaya printf yang berisi pesan log dan placeholder untuk argumen.
* @param ... Argumen yang ditampilkan dalam string format.
*/
#define APLogInfo(tag,fmt, ...) \
APLogToFile(tag, kAPLogLevelInfo, fmt, ##__VA_ARGS__)Untuk informasi lebih lanjut, lihat berkas APLog.h di bawah APLog.
Sebagai contoh, panggil pernyataan berikut untuk menulis log diagnosis setelah startup:
APLogInfo(@"mPaaS", @"Start Cost %d", time);Log yang ditulis oleh APLogInfo tidak dicetak di konsol Xcode. Untuk mencetak log terkait di konsol selama fase pengembangan, tambahkan berkas ConsoleLog ke proyek.
Karena alasan keamanan, jika Anda tidak ingin Aplikasi Anda mencetak log apa pun (termasuk log yang dicetak oleh NSLog dan APLogInfo) setelah daring, tambahkan berkas RemoveNSLog ke proyek saat paket rilis aplikasi dibuat.
Lihat log diagnosis lokal
Anda dapat menemukan log diagnosis di direktori sandbox, seperti yang ditunjukkan pada gambar berikut. Jenis log ini tidak dilaporkan secara default. Konsol memberikan perintah untuk mengekstrak log jika diperlukan.

Log diagnosis yang disimpan secara lokal di klien dibatasi oleh periode retensi dan ukuran file. SDK diagnosis di klien mengikuti kebijakan berikut ketika Aplikasi berjalan di latar belakang atau ketika proses diakhiri:
Periode retensi: 6 hari secara default. Jika SDK mendeteksi bahwa file log 3 hari sebelumnya melebihi 30 MB, semua log 3 hari sebelumnya dihapus.
Ukuran file: tidak lebih dari 100 MB secara default. Ketika ukuran file melebihi 100 MB, log yang lebih lama dengan setengah ukuran dihapus. Sebagai contoh, jika ukuran file adalah 120 MB, 60 MB log dihapus.
Dapatkan log diagnosis pengguna daring
Setelah Aplikasi Anda dirilis dan daring, jika Anda perlu mendapatkan log diagnosis lokal di klien untuk pemecahan masalah, Anda dapat memberikan perintah di konsol mPaaS untuk mendapatkan log diagnosis terkait. Untuk operasi terperinci, lihat Analisis Seluler > Ekstrak log.