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.
Aplikasi yang ingin mengukur performa alur autentikasi di MSAL.js dapat melakukannya secara manual, atau menggunakan langkah-langkah performa yang diambil oleh pustaka itu sendiri. Mengkonsumsi pengukuran performa memerlukan pengaturan klien performa dalam opsi konfigurasi telemetri dan menambahkan panggilan balik performa.
Atur performa klien telemetri
import { PublicClientApplication, BrowserPerformanceClient } from "@azure/msal-browser";
const msalConfig = {
auth: {
...
},
cache: {
...
},
system: {
...
}
}
const msalInstance = new PublicClientApplication({
...msalConfig,
telemetry: {
client: new BrowserPerformanceClient(msalConfig)
}
});
msalInstance.initialize();
Menambahkan panggilan balik performa
Aplikasi dapat mendaftarkan callback untuk menerima pengukuran kinerja yang dilakukan oleh pustaka. Pengukuran ini akan mencakup pengukuran end-to-end untuk API tingkat atas, serta pengukuran untuk API internal penting.
Catatan untuk aplikasi pihak pertama MSFT: Kami akan merilis build internal @azure/msal-browser yang telah dilengkapi instrumentasi untuk menangkap telemetri ini. Hubungi kami untuk detail selengkapnya.
Contoh
const msalInstance = new PublicClientApplication(config);
msalInstance.addPerformanceCallback((events: PerformanceEvent[]) => {
events.forEach(event => {
console.log(event);
});
});
Contoh peristiwa:
const event: PerformanceEvent = {
correlationId: "aaaa0000-bb11-2222-33cc-444444dddddd",
durationMs: 1873,
endPageVisibility: "hidden",
fromCache: false,
name: "acquireTokenSilent",
startPageVisibility: "visible",
startTimeMs: 1636414041888,
success: true,
silentCacheClientAcquireTokenDurationMs: 0,
silentRefreshClientAcquireTokenDurationMs: 150,
silentIframeClientAcquireTokenDurationMs: 0
cryptoOptsGetPublicKeyThumbprintDurationMs: 200,
cryptoOptsSignJwtDurationMs: 8,
clientId: "00001111-aaaa-2222-bbbb-3333cccc4444",
authority: "https://login.microsoftonline.com/common",
libraryName: "@azure/msal-browser-1p",
libraryVersion: "5.0.0",
appName: "my-application",
appVersion: "1.0.0"
}
Detail lengkap untuk PerformanceEvents objek dapat ditemukan di sini. Di bawah ini adalah daftar beberapa properti penting:
| Property | Type | Deskripsi |
|---|---|---|
name |
string |
Nama operasi, biasanya cocok dengan nama API tingkat atas (misalnya acquireTokenSilent, , acquireTokenByCodessoSilent). |
durationMs |
number |
Durasi menyeluruh dalam milidetik untuk suatu operasi. |
success |
boolean |
Apakah operasi berhasil atau tidak. |
fromCache |
boolean |
Apakah operasi memperoleh hasil dari cache. |
correlationId |
string |
ID korelasi yang digunakan untuk operasi (sebaiknya unik per permintaan). |
libraryVersion |
string |
Versi MSAL.js digunakan untuk operasi. |
authority |
string |
Otoritas yang digunakan untuk operasi tersebut. |
<internalFunctionName>DurationMs |
number |
Durasi dalam milidetik untuk operasi internal. |
removePerformanceCallback
API addPerformanceCallback akan mengembalikan ID callback, yang dapat diteruskan oleh aplikasi ke PublicClientApplication.removePerformanceCallback untuk membatalkan pendaftaran callback tersebut agar tidak lagi menerima peristiwa performa. Ini akan mengembalikan boolean yang menunjukkan apakah panggilan balik berhasil dihapus atau tidak.
Contoh
const msalInstance = new PublicClientApplication(config);
const callbackId: string = msalInstance.addPerformanceCallback((events: PerformanceEvent[]) => {
events.forEach(event => {
console.log(event);
});
});
const removed: boolean = msalInstance.removePerformanceCallback(callbackId);
Mengukur performa browser
Pengukuran kinerja browser dinonaktifkan secara bawaan karena menimbulkan beban kinerja yang signifikan. Aplikasi yang ingin mengaktifkan pengukuran performa yang dilaporkan ke garis waktu performa browser harus:
- Buka alat pengembang browser
- Browser Edge, Chrome, dan Firefox: tekan F12
- Safari: masuk ke preferensi Safari (
Safari Menu>Preferences), pilih dan aktifkan .Advanced TabShow features for web developersSetelah menu diaktifkan, Anda akan menemukan konsol pengembang dengan mengklikDevelop>Show Javascript Console
- Navigasikan ke
Session Storage: - Pilih domain target
- Tambahkan
msal.browser.performance.enabledkunci keSession Storage, atur nilainya ke1, refresh halaman dan periksa garis waktu performa browser.