Commit a07373d
Port monitor_window_timeout telemetry enhancements to v5 (dev branch) (#8385)
This pull request enhances telemetry and monitoring in the MSAL Browser
library by adding more detailed performance and error tracking,
particularly for bridge timeouts and network conditions. It also
introduces warnings and telemetry when the redirect URI’s origin does
not match the current page, helping to diagnose authentication issues.
The changes include propagating the `performanceClient` for more
granular telemetry, collecting network information, and expanding test
coverage to ensure these features work as intended.
**Telemetry and Performance Improvements:**
- Added the `performanceClient` parameter to the `waitForBridgeResponse`
function and all its call sites in `PopupClient` and
`SilentIframeClient`, enabling more detailed telemetry for bridge
timeout scenarios.
[[1]](diffhunk://#diff-78bb6bdde3811910ee513b0902523f82816adfed7fb4e71c34554ba04711956eL237-R255)
[[2]](diffhunk://#diff-3f43afd5556603a80064728bd701519ec2e22979f09ae6095b7fdea0507ad593L375-R376)
[[3]](diffhunk://#diff-3f43afd5556603a80064728bd701519ec2e22979f09ae6095b7fdea0507ad593L504-R506)
[[4]](diffhunk://#diff-3f43afd5556603a80064728bd701519ec2e22979f09ae6095b7fdea0507ad593L632-R635)
[[5]](diffhunk://#diff-3f43afd5556603a80064728bd701519ec2e22979f09ae6095b7fdea0507ad593L786-R790)
[[6]](diffhunk://#diff-379febb046eaaa641bafb36c0a72f4c585eda5881b889dd8942919112539e5faL304-R305)
[[7]](diffhunk://#diff-379febb046eaaa641bafb36c0a72f4c585eda5881b889dd8942919112539e5faL469-R471)
[[8]](diffhunk://#diff-d8aa8313e46503e745028509a1ac18093831ea5baeafe63c63ea825727aa3580L1504-R1504)
- Enhanced telemetry in `waitForBridgeResponse` by logging the timeout
value and message version, providing more context for monitor window
timeout errors.
[[1]](diffhunk://#diff-78bb6bdde3811910ee513b0902523f82816adfed7fb4e71c34554ba04711956eL237-R255)
[[2]](diffhunk://#diff-78bb6bdde3811910ee513b0902523f82816adfed7fb4e71c34554ba04711956eR286-R297)
- Collected network information (effective connection type and
round-trip time) in performance events using a new `getNetworkInfo`
utility, and included this data in telemetry for better diagnostics.
[[1]](diffhunk://#diff-7bf3f5ead1c2093dd056541885a7effa8b79d493ebfac484c2bce9e132cb42e6R21)
[[2]](diffhunk://#diff-686e6e522b4c2193064ffc1229f6f8c210bddf5fdc88690acc6ce1f893e4e44cR8-R34)
[[3]](diffhunk://#diff-7bf3f5ead1c2093dd056541885a7effa8b79d493ebfac484c2bce9e132cb42e6R164-R172)
**Error Handling and Diagnostics:**
- Added a warning and a telemetry field when the redirect URI’s origin
does not match the current page, helping to surface potential
authentication misconfigurations.
**Testing Enhancements:**
- Expanded unit tests to verify logging and telemetry for cross-origin
redirect URIs and the inclusion of network information in performance
events, as well as to ensure the new `performanceClient` parameter is
properly handled in all relevant test cases.
[[1]](diffhunk://#diff-38bf5f23ba532c32331992082c13e9fb5e3e6b61a8ddc5a06f6cb41c5191f29bR346-R396)
[[2]](diffhunk://#diff-910035273036aec3a2ea5df6d270f63c5008957027756ead62325c6214ee168aR77-R131)
[[3]](diffhunk://#diff-0e4f86d8a16dd8be09b5f3b33d82dafe4c4325e3fd92b994120b0290beb0c2d6L1911-R1912)
[[4]](diffhunk://#diff-0e4f86d8a16dd8be09b5f3b33d82dafe4c4325e3fd92b994120b0290beb0c2d6L1947-R1949)
[[5]](diffhunk://#diff-0e4f86d8a16dd8be09b5f3b33d82dafe4c4325e3fd92b994120b0290beb0c2d6L1987-R1990)
[[6]](diffhunk://#diff-0e4f86d8a16dd8be09b5f3b33d82dafe4c4325e3fd92b994120b0290beb0c2d6L2044-R2056)
[[7]](diffhunk://#diff-d597c4d5e0f6d07f5ddd39328c482759a4377c4024b73a1f03c5af03b62bbd07L124-R125)
[[8]](diffhunk://#diff-d597c4d5e0f6d07f5ddd39328c482759a4377c4024b73a1f03c5af03b62bbd07L159-R161)
[[9]](diffhunk://#diff-d597c4d5e0f6d07f5ddd39328c482759a4377c4024b73a1f03c5af03b62bbd07L198-R201)
[[10]](diffhunk://#diff-d597c4d5e0f6d07f5ddd39328c482759a4377c4024b73a1f03c5af03b62bbd07L254-R266)
**Documentation and Release:**
- Updated API documentation to reflect the new `performanceClient`
parameter and created change files for `@azure/msal-browser` and
`@azure/msal-common` noting the additional telemetry for monitor window
timeout errors.
[[1]](diffhunk://#diff-d8aa8313e46503e745028509a1ac18093831ea5baeafe63c63ea825727aa3580L1504-R1504)
[[2]](diffhunk://#diff-a0ad68ef5aa0fbf7b3181f222cdc9314009d150df48e59d6de586a2c0bec5840R1-R7)
[[3]](diffhunk://#diff-528f1b737ee6dde3d5da4d005008c0edc57475bc94174ef051f520ed1f504d0aR1-R7)
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: tnorling <5307810+tnorling@users.noreply.github.com>
Co-authored-by: Thomas Norling <thomas.norling@microsoft.com>1 parent 543e435 commit a07373d
17 files changed
Lines changed: 455 additions & 534 deletions
File tree
- change
- lib
- msal-browser
- apiReview
- src
- interaction_client
- telemetry
- utils
- test
- interaction_client
- interaction_handler
- telemetry
- utils
- msal-common
- apiReview
- src/telemetry/performance
Lines changed: 7 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
Lines changed: 7 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1501 | 1501 | | |
1502 | 1502 | | |
1503 | 1503 | | |
1504 | | - | |
| 1504 | + | |
1505 | 1505 | | |
1506 | 1506 | | |
1507 | 1507 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
372 | 372 | | |
373 | 373 | | |
374 | 374 | | |
375 | | - | |
| 375 | + | |
| 376 | + | |
376 | 377 | | |
377 | 378 | | |
378 | 379 | | |
| |||
501 | 502 | | |
502 | 503 | | |
503 | 504 | | |
504 | | - | |
| 505 | + | |
| 506 | + | |
505 | 507 | | |
506 | 508 | | |
507 | 509 | | |
| |||
629 | 631 | | |
630 | 632 | | |
631 | 633 | | |
632 | | - | |
| 634 | + | |
| 635 | + | |
633 | 636 | | |
634 | 637 | | |
635 | 638 | | |
| |||
783 | 786 | | |
784 | 787 | | |
785 | 788 | | |
786 | | - | |
| 789 | + | |
| 790 | + | |
787 | 791 | | |
788 | 792 | | |
789 | 793 | | |
| |||
Lines changed: 4 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
301 | 301 | | |
302 | 302 | | |
303 | 303 | | |
304 | | - | |
| 304 | + | |
| 305 | + | |
305 | 306 | | |
306 | 307 | | |
307 | 308 | | |
| |||
466 | 467 | | |
467 | 468 | | |
468 | 469 | | |
469 | | - | |
| 470 | + | |
| 471 | + | |
470 | 472 | | |
471 | 473 | | |
472 | 474 | | |
| |||
Lines changed: 10 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
327 | 327 | | |
328 | 328 | | |
329 | 329 | | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
330 | 340 | | |
331 | 341 | | |
332 | 342 | | |
| |||
Lines changed: 4 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
| 21 | + | |
21 | 22 | | |
22 | 23 | | |
23 | 24 | | |
| |||
160 | 161 | | |
161 | 162 | | |
162 | 163 | | |
| 164 | + | |
163 | 165 | | |
164 | 166 | | |
165 | 167 | | |
166 | 168 | | |
167 | 169 | | |
168 | 170 | | |
| 171 | + | |
| 172 | + | |
169 | 173 | | |
170 | 174 | | |
171 | 175 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
13 | 14 | | |
14 | 15 | | |
15 | 16 | | |
| |||
234 | 235 | | |
235 | 236 | | |
236 | 237 | | |
237 | | - | |
| 238 | + | |
| 239 | + | |
238 | 240 | | |
239 | 241 | | |
240 | 242 | | |
241 | 243 | | |
242 | 244 | | |
243 | 245 | | |
244 | 246 | | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
245 | 256 | | |
246 | 257 | | |
247 | 258 | | |
| |||
272 | 283 | | |
273 | 284 | | |
274 | 285 | | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
275 | 298 | | |
276 | 299 | | |
277 | 300 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
8 | 35 | | |
9 | 36 | | |
10 | 37 | | |
| |||
Lines changed: 10 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1908 | 1908 | | |
1909 | 1909 | | |
1910 | 1910 | | |
1911 | | - | |
| 1911 | + | |
| 1912 | + | |
1912 | 1913 | | |
1913 | 1914 | | |
1914 | 1915 | | |
| |||
1944 | 1945 | | |
1945 | 1946 | | |
1946 | 1947 | | |
1947 | | - | |
| 1948 | + | |
| 1949 | + | |
1948 | 1950 | | |
1949 | 1951 | | |
1950 | 1952 | | |
| |||
1984 | 1986 | | |
1985 | 1987 | | |
1986 | 1988 | | |
1987 | | - | |
| 1989 | + | |
| 1990 | + | |
1988 | 1991 | | |
1989 | 1992 | | |
1990 | 1993 | | |
| |||
2041 | 2044 | | |
2042 | 2045 | | |
2043 | 2046 | | |
2044 | | - | |
| 2047 | + | |
| 2048 | + | |
2045 | 2049 | | |
2046 | 2050 | | |
2047 | 2051 | | |
2048 | 2052 | | |
2049 | 2053 | | |
2050 | 2054 | | |
2051 | | - | |
| 2055 | + | |
| 2056 | + | |
2052 | 2057 | | |
2053 | 2058 | | |
2054 | 2059 | | |
| |||
0 commit comments