-
Notifications
You must be signed in to change notification settings - Fork 6.6k
/
histograms.xml
2091 lines (1862 loc) · 82 KB
/
histograms.xml
1
2
3
4
5
6
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<!--
Copyright 2020 The Chromium Authors
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
-->
<!--
This file is used to generate a comprehensive list of Navigation histograms
along with a detailed description for each histogram.
For best practices on writing histogram descriptions, see
https://chromium.googlesource.com/chromium/src.git/+/HEAD/tools/metrics/histograms/README.md
Please follow the instructions in the OWNERS file in this directory to find a
reviewer. If no OWNERS file exists, please consider signing up at
go/reviewing-metrics (Googlers only), as all subdirectories are expected to
have an OWNERS file. As a last resort you can send the CL to
chromium-metrics-reviews@google.com.
-->
<histogram-configuration>
<histograms>
<variants name="FrameTypes">
<variant name="MainFrame"/>
<variant name="Subframe"/>
</variants>
<variants name="NavigationThrottleEvents">
<variant name="WillFailRequest"/>
<variant name="WillProcessResponse"/>
<variant name="WillRedirectRequest"/>
<variant name="WillStartRequest"/>
</variants>
<variants name="PrerenderTriggerType">
<!--
Also used in tools/metrics/histograms/metadata/page/histograms.xml.
-->
<variant name="">
<obsolete>
Base histogram. Use suffixes of this histogram instead. Non-suffix name
was removed in Feb 2022.
</obsolete>
</variant>
<variant name=".Embedder_BookmarkBar"/>
<variant name=".Embedder_DefaultSearchEngine"/>
<variant name=".Embedder_DirectURLInput"/>
<variant name=".SpeculationRule"/>
<variant name=".SpeculationRuleFromIsolatedWorld"/>
</variants>
<histogram name="BackForwardCache.AllSites.EvictedAfterDocumentRestoredReason"
enum="BackForwardCacheEvictedAfterDocumentRestoredReason"
expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
Records the reason why the page is evicted from the back-forward cache but
after the document is restored. This happens when there is a race between
eviction and restoring. This also records when the page is restored to
calculate how often this eviction happens.
This is recorded for all websites regardless whether back-forward cache is
enabled or not.
</summary>
</histogram>
<histogram name="BackForwardCache.AllSites.HistoryNavigationOutcome"
enum="BackForwardCacheHistoryNavigationOutcome" expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
When navigating back to a page in the session history, this records whether
the page was restored from the BackForwardCache or not.
This is recorded for all websites regardless whether back-forward cache is
enabled or not.
</summary>
</histogram>
<histogram
name="BackForwardCache.AllSites.HistoryNavigationOutcome.BlocklistedFeature"
enum="WebSchedulerTrackedFeature" expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
When navigating back to a page in the session history, this records what
blocklisted features were used when the page was loaded and prevented this
page from being stored in the back-forward cache. Multiple blocklisted
features can be recorded for the same page.
This is recorded for all websites regardless whether back-forward cache is
enabled or not.
</summary>
</histogram>
<histogram
name="BackForwardCache.AllSites.HistoryNavigationOutcome.BrowsingInstanceNotSwappedReason"
enum="BackForwardCacheBrowsingInstanceNotSwappedReason"
expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
When navigating back to a page in the session history and the
BackForwardCache wasn't used because of the other active WebContents objects
in the BrowsingInstance, this records the reason why the browsing instance
wasn't swapped.
This is recorded for all websites regardless whether back-forward cache is
enabled or not.
</summary>
</histogram>
<histogram
name="BackForwardCache.AllSites.HistoryNavigationOutcome.DisabledForRenderFrameHostReason2"
enum="BackForwardCacheDisabledForRenderFrameHostReason2"
expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>rakina@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
For history navigations, records the reason passed to
BackForwardCache::DisableForRenderFrameHost calls.
The metric is recorded when a history navigation commits and emits a sample
for each reason. Compare this with
BackForwardCache.HistoryNavigationOutcome, which contains the total number
of navigations which where not cached
This is recorded for all websites regardless whether back-forward cache is
enabled or not.
</summary>
</histogram>
<histogram
name="BackForwardCache.AllSites.HistoryNavigationOutcome.NotRestoredReason"
enum="BackForwardCacheNotRestoredReason" expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
When navigating back to a page in the session history, record why it wasn't
restored from the cache. The page might not have entered the back-forward in
the first place based on the features used, or it might have been evicted
while being in the cache.
This is recorded for all websites regardless of whether back-forward cache
is enabled or not.
</summary>
</histogram>
<histogram
name="BackForwardCache.AllSites.HistoryNavigationOutcome.RelatedActiveContents.Count"
units="count" expires_after="2023-10-21">
<owner>rakina@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
When navigating back to a page in the session history and the
BackForwardCache wasn't used because of other active WebContents objects in
the BrowsingInstance, this records the number of other active pages/related
active contents using the same BrowsingInstance.
This is recorded for all websites regardless of whether back-forward cache
is enabled or not.
</summary>
</histogram>
<histogram
name="BackForwardCache.AllSites.HistoryNavigationOutcome.RelatedActiveContents.IsPotentiallySyncAccessible"
enum="RelatedActiveContentsSyncAccessInfo" expires_after="2023-10-21">
<owner>rakina@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
When navigating back to a page in the session history and the
BackForwardCache wasn't used because of other active WebContents objects in
the BrowsingInstance, this Records whether the page was potentially
synchronously accessible by other pages/related active contents using the
same BrowsingInstance, at the time the page was navigated away from.
This is recorded for all websites regardless of whether back-forward cache
is enabled or not.
</summary>
</histogram>
<histogram name="BackForwardCache.CountEntriesWithoutRendererAck" units="count"
expires_after="2021-10-01">
<owner>yuzus@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
This metric is emitted when we try to enforce the cache size limit, which is
1) when a page enters BackForwardCache and 2) when a page entering
BackForwardCache receives an acknowledgement from the renderer.
This reports the number of the entries that have not received an
acknowledgement from the renderer.
</summary>
</histogram>
<histogram name="BackForwardCache.EvictedAfterDocumentRestoredReason"
enum="BackForwardCacheEvictedAfterDocumentRestoredReason"
expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
Records the reason why the page is evicted from the back-forward cache but
after the document is restored. This happens when there is a race between
eviction and restoring. This also records when the page is restored to
calculate how often this eviction happens.
This is recorded when back-forward cache is enabled for this navigation
(back-forward cache feature is enabled and the domain is in the scope of the
experiment).
</summary>
</histogram>
<histogram name="BackForwardCache.Eviction.Renderer"
enum="BackForwardCacheRendererEvictionReason" expires_after="2023-12-31">
<owner>rakina@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
Records the reason of renderer-initiated back-forward cache eviction.
Emitted when renderer evicts the page from back-forward cache.
</summary>
</histogram>
<histogram name="BackForwardCache.Eviction.TimeUntilProcessKilled" units="ms"
expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
Records the time duration between the last time when the entry goes to the
back-forward cache and the time when the process is killed.
</summary>
</histogram>
<histogram
name="BackForwardCache.Experimental.UnexpectedIPCMessagePostedToCachedFrame.MethodHash"
enum="MojoInterfaceName" expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
Track number of times an unexpected IPC message is posted to frames in the
renderer process while they are frozen in the back-forward cache. IPC tasks
are denoted by md5 hash of the mojo bindings method name or message hash for
legacy IPCs.
Recorded when an IPC task is posted to frames that have already been stored
in the back-forward cache, after a 15 second delay to account for completion
of all freezing-related operations.
</summary>
</histogram>
<histogram
name="BackForwardCache.Experimental.UnexpectedIPCMessagePostedToCachedFrame.TimeUntilIPCReceived"
units="ms" expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
Duration between start of page being stored in the back-forward cache and
when the unexpected IPC call is received by a frame while in the cache.
Recorded when an IPC task is posted to frames that have already been stored
in the back-forward cache, after a 15 second delay to account for completion
of all freezing-related operations.
</summary>
</histogram>
<histogram name="BackForwardCache.HistoryNavigationOutcome"
enum="BackForwardCacheHistoryNavigationOutcome" expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
When navigating back to a page in the session history, this records whether
the page was restored from the BackForwardCache or not.
This is recorded when back-forward cache is enabled for this navigation
(back-forward cache feature is enabled and the domain is in the scope of the
experiment).
</summary>
</histogram>
<histogram name="BackForwardCache.HistoryNavigationOutcome.BlocklistedFeature"
enum="WebSchedulerTrackedFeature" expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
When navigating back to a page in the session history, this records what
blocklisted features were used when the page was loaded and prevented this
page from being stored in the back-forward cache. Multiple blocklisted
features can be recorded for the same page.
This is recorded when back-forward cache is enabled for this navigation
(back-forward cache feature is enabled and the domain is in the scope of the
experiment).
</summary>
</histogram>
<histogram
name="BackForwardCache.HistoryNavigationOutcome.BrowsingInstanceNotSwappedReason"
enum="BackForwardCacheBrowsingInstanceNotSwappedReason"
expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
When navigating back to a page in the session history and the
BackForwardCache wasn't used because of the other active WebContents objects
in the BrowsingInstance, this records the reason why the browsing instance
wasn't swapped.
This is recorded when back-forward cache is enabled for this navigation
(back-forward cache feature is enabled and the domain is in the scope of the
experiment).
</summary>
</histogram>
<histogram
name="BackForwardCache.HistoryNavigationOutcome.DisabledForRenderFrameHostReason2"
enum="BackForwardCacheDisabledForRenderFrameHostReason2"
expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
For history navigations, records the reason passed to
BackForwardCache::DisableForRenderFrameHost calls.
The metric is recorded when a history navigation commits and emits a sample
for each reason. Compare this with
BackForwardCache.HistoryNavigationOutcome, which contains the total number
of navigations which where not cached
This is recorded for all websites regardless whether back-forward cache is
enabled or not.
</summary>
</histogram>
<histogram
name="BackForwardCache.HistoryNavigationOutcome.DisallowActivationReason"
enum="InactiveFrameDisallowActivationReason" expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
For history navigations, records the reason passed to
RenderFrameHost::IsInactiveAndDisallowActivation calls.
The metric is recorded when a history navigation commits and emits a sample
for each reason. Compare this with
BackForwardCache.HistoryNavigationOutcome, which contains the total number
of navigations which where not cached
This is recorded for all websites regardless whether back-forward cache is
enabled or not.
</summary>
</histogram>
<histogram
name="BackForwardCache.HistoryNavigationOutcome.NotRestoredDueToAccessibility.AXEventType"
enum="AXEventType" expires_after="2022-10-31">
<owner>yuzus@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
For history navigations, records the AX event type that caused
RenderFrameHost::IsInactiveAndDisallowActivation calls. The value refers to
AX enum in ui/accessibility/ax_enums.mojom.
The metric is recorded when a history navigation commits and emits the
breakdown of a specific bucket in HistoryNavigationOutcome.NotRestoredReason
(AXEvent). Compare this with BackForwardCache.HistoryNavigationOutcome,
which contains the total number of navigations which were not cached.
This is recorded for all websites regardless whether back-forward cache is
enabled or not.
</summary>
</histogram>
<histogram name="BackForwardCache.HistoryNavigationOutcome.NotRestoredReason"
enum="BackForwardCacheNotRestoredReason" expires_after="2023-12-31">
<owner>fergal@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
When navigating back to a page in the session history, record why it wasn't
restored from the cache. The page might not have entered the back-forward in
the first place based on the features used, or it might have been evicted
while being in the cache.
This is recorded when back-forward cache is enabled for this navigation
(back-forward cache feature is enabled and the domain is in the scope of the
experiment).
</summary>
</histogram>
<histogram
name="BackForwardCache.HistoryNavigationOutcome.RelatedActiveContents.Count"
units="count" expires_after="2023-10-21">
<owner>rakina@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
When navigating back to a page in the session history and the
BackForwardCache wasn't used because of other active WebContents objects in
the BrowsingInstance, this records the number of other active pages/related
active contents using the same BrowsingInstance.
This is recorded when back-forward cache is enabled for this navigation
(back-forward cache feature is enabled and the domain is in the scope of the
experiment).
</summary>
</histogram>
<histogram
name="BackForwardCache.HistoryNavigationOutcome.RelatedActiveContents.IsPotentiallySyncAccessible"
enum="RelatedActiveContentsSyncAccessInfo" expires_after="2023-10-21">
<owner>rakina@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
When navigating back to a page in the session history and the
BackForwardCache wasn't used because of other active WebContents objects in
the BrowsingInstance, this Records whether the page was potentially
synchronously accessible by other pages/related active contents using the
same BrowsingInstance, at the time the page was navigated away from.
This is recorded when back-forward cache is enabled for this navigation
(back-forward cache feature is enabled and the domain is in the scope of the
experiment).
</summary>
</histogram>
<histogram name="BackForwardCache.MainFrameHasPageshowListenersOnRestore"
enum="BooleanPresent" expires_after="M82">
<owner>altimin@chromium.org</owner>
<owner>hajimehoshi@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
Records whether a page restored from the back-forward cache has pageshow
handlers installed in its main frame. Recorded when the renderer resumes
page when restoring it from the back-forward cache.
</summary>
</histogram>
<histogram name="BackForwardCache.PageWithForm.RestoreResult"
enum="BackForwardCacheHistoryNavigationOutcome" expires_after="2023-11-19">
<owner>wenyufu@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
Record for a page that has form attached is about to restored from the back
forward cache, to understand the success rate for bfcaching a page that has
form / input entry attached. This is recorded for page with form attached
only.
Recorded during a cross-page history navigation. If a page with form is
restored from the cache, "PageRestored" will be recorded; if the
page is not egligible to be restored due to any reason,
"PageNotRestored" will be recorded.
</summary>
</histogram>
<histogram name="BackForwardCache.PageWithForm.Storable"
enum="BackForwardCachePageWithFormStorable" expires_after="2023-11-19">
<owner>wenyufu@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
Record for a page that has form attached is egligible to be stored in back
forwad cache, to understand the success rate for bfcaching a page that has
form / input entry attached. This is recorded for page with form attached
only.
Recorded when a navigation is committed. If a page has form attached
"PageSeen" will be recorded; if the page is egligible to be stored
in the back forward cache, "PageStored" will be recorded.
</summary>
</histogram>
<histogram name="BackForwardCache.ReloadsAfterHistoryNavigation"
enum="BackForwardCacheReloadsAfterHistoryNavigation"
expires_after="2022-06-26">
<owner>sreejakshetty@chromium.org</owner>
<owner>altimin@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
Records the number of reloads after a history navigation both for the cases
when page is served and not served from back-forward cache.
This is recorded when navigation is committed, only for the domains which
are in the scope of back-forward cache experiment and they are of same
NavigationEntry (e.g. back and reload in different tab do not count).
</summary>
</histogram>
<histogram name="BackForwardCache.ReloadsAndHistoryNavigations"
enum="BackForwardCacheReloadsAndHistoryNavigations"
expires_after="2022-06-26">
<owner>sreejakshetty@chromium.org</owner>
<owner>altimin@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
Records the total number of history navigations along with the number of
reloads if the previous navigation was a history one.
This is recorded when navigation is committed, only for the domains which
are in the scope of back-forward cache experiment.
</summary>
</histogram>
<histogram name="BackForwardCache.Restore.NavigationToFirstPaint" units="ms"
expires_after="2023-11-12">
<owner>sreejakshetty@chromium.org</owner>
<owner>altimin@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
Duration between start of navigation restoring a document from back-forward
cache and the first paint.
This is recorded when a history navigation is served from back-forward cache
but in a foreground tab.
</summary>
</histogram>
<histogram
name="BackForwardCache.UnexpectedRendererToBrowserMessage.InterfaceName"
enum="MojoInterfaceName" expires_after="2023-12-31">
<owner>fergal@google.com</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
Hash (base::HashMetricName) of a mojo interface name.
A sample is recorded for every message the browser receives from a renderer
for a page that is in the back-forward cache. Logging can be disabled via
the back-forward cache feature parameter
"message_handling_when_cached".
Renderers should not be sending messages back to the browser for pages that
are in the back-forward cache. Eventually we will be killing such renderers
(as we could assume that it is misbehaving because it got compromised). But
first we must make sure that we are not sending messages by mistake (i.e.
bugs in the renderer).
</summary>
</histogram>
<histogram name="Navigation.AnonymousIframeIsSandboxed" enum="Boolean"
expires_after="2023-10-01">
<owner>arthursonzogni@chromium.org</owner>
<owner>chrome-security-owp-team@google.com</owner>
<summary>
Record whether iframe with the anonymous attribute contains sandboxed
document or not.
</summary>
</histogram>
<histogram name="Navigation.BackForward.CacheFlags" enum="NavigationCacheEnum"
expires_after="M85">
<owner>clamy@chromium.org</owner>
<summary>The cache flags set on back-forward navigations.</summary>
</histogram>
<histogram name="Navigation.BackForward.NavigatingToEntryMarkedToBeSkipped"
enum="Boolean" expires_after="2019-12-31">
<owner>shivanisha@chromium.org</owner>
<owner>csharrison@chromium.org</owner>
<summary>
This metric logs true if the existing entry being navigated to is marked to
be skipped on back/forward UI. This is logged at the start of navigation
initiated using long-press back/forward button.
</summary>
</histogram>
<histogram
name="Navigation.BackForward.TimeFromOpenBackNavigationMenuToActivateItem"
units="ms" expires_after="2023-10-20">
<owner>leimy@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
The time spent between the back navigation menu model's opening and the
activation of a menu item. This is recorded when the back navigation menu
model receives signal that indicates the item from the menu is activated.
See `BackForwardMenuModel::MenuWillShow()` and
`BackForwardMenuModel::ActivatedAt()` for more details.
</summary>
</histogram>
<histogram
name="Navigation.BackForward.TimeFromOpenBackNavigationMenuToCloseMenu"
units="ms" expires_after="2023-10-20">
<owner>leimy@chromium.org</owner>
<owner>bfcache-dev@chromium.org</owner>
<summary>
The time spent between the back navigation menu model's opening and the
closing. There might or might not be a menu item activation in between. This
is recorded when the back navigation menu model receives signal that
indicates it will be closed. See `BackForwardMenuModel::MenuWillShow()` and
`BackForwardMenuModel::MenuWillClose()` for details.
</summary>
</histogram>
<histogram name="Navigation.BackForward.WasCached"
enum="NavigationWasServedFromCache" expires_after="M85">
<owner>clamy@chromium.org</owner>
<summary>Whether the back-forward navigation was served from cache.</summary>
</histogram>
<histogram name="Navigation.BlobUrl" enum="Boolean" expires_after="2023-10-15">
<owner>jkokatsu@google.com</owner>
<owner>chrome-security-owp-team@google.com</owner>
<summary>
Record if navigation has occured to Blob URL, to better understand the usage
of Blob URL in active document (i.e. both main frame and iframes). This
record is taken in Navigator::DidNavigate.
</summary>
</histogram>
<histogram name="Navigation.BlobUrl.MainFrame" enum="Boolean"
expires_after="2023-10-15">
<owner>jkokatsu@google.com</owner>
<owner>chrome-security-owp-team@google.com</owner>
<summary>
Record if navigation has occured to Blob URL in main frame or iframe, to
better understand the usage of Blob URL in active document.
</summary>
</histogram>
<histogram name="Navigation.BlobUrl.Sandboxed" enum="Boolean"
expires_after="2023-10-15">
<owner>jkokatsu@google.com</owner>
<owner>chrome-security-owp-team@google.com</owner>
<summary>
Record if navigation has occured to opaque Blob URL, to better understand
the usage of Blob URL in active document.
</summary>
</histogram>
<histogram name="Navigation.BrowserMappedUrnUuidInIframeOrFencedFrame"
enum="NavigationBrowserMappedUrnUuidInIframeOrFencedFrame"
expires_after="2023-09-03">
<owner>xiaochenzh@chromium.org</owner>
<owner>shivanisha@chromium.org</owner>
<summary>
For navigation requests with FLEDGE or SharedStorage generated urn:uuid,
record whether it is rendered in a fenced frame or iframe. Recorded when
navigation requests begin (i.e. during
NavigationRequest::BeginNavigation()).
</summary>
</histogram>
<histogram name="Navigation.CodeCacheTime.{CodeCacheType}" units="ms"
expires_after="2023-06-15">
<owner>cduvall@chromium.org</owner>
<owner>jam@chromium.org</owner>
<summary>
Measures how long it takes to fetch from the code cache. Logged every time
the code cache is fetched for the navigation body or a resource.
</summary>
<token key="CodeCacheType">
<variant name="MainFrame"/>
<variant name="Resource"/>
<variant name="Subframe"/>
</token>
</histogram>
<histogram name="Navigation.DidCommitSameDocumentNavigation.Duration"
units="ms" expires_after="2023-10-15">
<owner>peilinwang@google.com</owner>
<owner>woa-performance-bugs+jank@google.com</owner>
<summary>
Measures the amount of time it takes to call
RenderFrameHostImpl::DidCommitSameDocumentNavigation(). Logged once per call
to RenderFrameHostImpl::DidCommitSameDocumentNavigation().
</summary>
</histogram>
<histogram name="Navigation.DownloadPolicy.LogArbitraryPolicyPerDownload"
enum="NavigationDownloadPolicy" expires_after="2020-11-01">
<owner>csharrison@chromium.org</owner>
<owner>yaoxia@chromium.org</owner>
<summary>
When a navigation results in a download, logs the download policy applied to
that navigation. This is logged once per download and when multiple policies
exist, an arbitrary one will be chosen.
</summary>
</histogram>
<histogram name="Navigation.DownloadPolicy.LogPerPolicyApplied"
enum="NavigationDownloadPolicy" expires_after="2020-11-01">
<owner>csharrison@chromium.org</owner>
<owner>yaoxia@chromium.org</owner>
<summary>
When a navigation results in a download, for each download policy applied to
that navigation, logs the policy.
</summary>
</histogram>
<histogram name="Navigation.EngagementTime.HTTP" units="ms"
expires_after="never">
<!-- expires-never: Underlies a public transparency report graph https://transparencyreport.google.com/https/overview?hl=en -->
<owner>estark@chromium.org</owner>
<owner>security-enamel@chromium.org</owner>
<summary>
The amount of time that an HTTP page was in the foreground. Recorded on
every page close/transition. This metric is exposed publicly on the HTTPS
Transparency Report at
https://transparencyreport.google.com/https/overview?hl=en.
</summary>
</histogram>
<histogram name="Navigation.EngagementTime.HTTPS" units="ms"
expires_after="never">
<!-- expires-never: Underlies a public transparency report graph https://transparencyreport.google.com/https/overview?hl=en -->
<owner>estark@chromium.org</owner>
<owner>security-enamel@chromium.org</owner>
<summary>
The amount of time that an HTTPS page was in the foreground. Recorded on
every page close/transition. This metric is exposed publicly on the HTTPS
Transparency Report at
https://transparencyreport.google.com/https/overview?hl=en.
</summary>
</histogram>
<histogram name="Navigation.EngagementTime.Ratio" units="%"
expires_after="2023-10-15">
<owner>estark@chromium.org</owner>
<owner>security-enamel@chromium.org</owner>
<summary>
The percentage of time that HTTPS pages were in the foreground, as compared
to total foreground time. Recorded whenever user metrics are uploaded.
</summary>
</histogram>
<histogram name="Navigation.GetFrameHostForNavigation.Duration" units="ms"
expires_after="2023-10-15">
<owner>peilinwang@google.com</owner>
<owner>woa-performance-bugs+jank@google.com</owner>
<summary>
Measures the amount of time it takes to call
RenderFrameHostManager::GetFrameHostForNavigation(). Logged once per call to
RenderFrameHostManager::GetFrameHostForNavigation(), most often two times
per navigation.
</summary>
</histogram>
<histogram name="Navigation.Guest.IsHTTPOrHTTPS"
enum="BooleanHttpBasedOrOtherScheme" expires_after="2023-11-19">
<owner>alexmos@chromium.org</owner>
<owner>creis@chromium.org</owner>
<owner>wjmaclean@chromium.org</owner>
<summary>
Whether the committing guest navigation targets an HTTP(S) URL. Logged at
ready-to-commit time for navigations in a webview tag (also known as
"guest" in process model terminology), excluding same-document
navigations and errors.
</summary>
</histogram>
<histogram name="Navigation.Guest.IsMainFrame" enum="BooleanMainFrame"
expires_after="2023-11-19">
<owner>alexmos@chromium.org</owner>
<owner>creis@chromium.org</owner>
<owner>wjmaclean@chromium.org</owner>
<summary>
Whether the committing guest navigation is in a main frame. Logged at
ready-to-commit time for navigations in a webview tag (also known as
"guest" in process model terminology), excluding same-document
navigations and errors.
</summary>
</histogram>
<histogram name="Navigation.Home.IsChromeInternal" enum="Boolean"
expires_after="never">
<!-- expires-never: part of top-line metric (internal: go/chrome-browser-nsm) -->
<owner>mpearson@chromium.org</owner>
<owner>amaralp@chromium.org</owner>
<owner>chrome-analysis-team@google.com</owner>
<summary>
Emitted every time a user uses a Home button to go to their home page.
Records whether the page is chrome-internal (most likely the New Tab Page or
about:blank) or not (most likely an actual web site). For the purpose of
this histogram, about:, chrome: and chrome-native: are considered
chrome-internal; everything else is not.
The user action Navigation.Home.NotChromeInternal is also logged in the case
that false is logged to this histogram.
This histogram is of special interest to the chrome-analysis-team@. Do not
change its semantics or retire it without talking to them first.
</summary>
</histogram>
<histogram name="Navigation.HostnameHasDeviationCharacters" units="count"
expires_after="2023-10-08">
<owner>meacer@chromium.org</owner>
<owner>chrome-trusty-transport@google.com</owner>
<summary>
Counts the number of typed and pasted main frame navigations to hostnames
that contain characters that are treated differently between IDNA 2003 and
IDNA 2008, aka deviation characters. Ignores reload navigations.
</summary>
</histogram>
<histogram name="Navigation.IsGuest" enum="NavigationIsGuest"
expires_after="2023-11-19">
<owner>alexmos@chromium.org</owner>
<owner>creis@chromium.org</owner>
<owner>wjmaclean@chromium.org</owner>
<summary>
Whether the committing navigation is for a webview tag (also known as
"guest" in process model terminology). Logged at ready-to-commit
time for every navigation, excluding same-document navigations and errors.
</summary>
</histogram>
<histogram name="Navigation.IsLockedProcess" enum="NavigationIsLockedProcess"
expires_after="2023-11-10">
<owner>alexmos@chromium.org</owner>
<owner>lukasza@chromium.org</owner>
<summary>
Whether the navigation commits in a process that is locked to an origin.
Logged at ready-to-commit time for every navigation excluding same-document
navigations and errors.
</summary>
</histogram>
<histogram name="Navigation.IsLockedProcess.HTTPOrHTTPS"
enum="NavigationIsLockedProcess" expires_after="2023-11-10">
<owner>alexmos@chromium.org</owner>
<owner>lukasza@chromium.org</owner>
<summary>
Whether the navigation commits in a process that is locked to an origin.
Logged at ready-to-commit time for every navigation that commits with a HTTP
or HTTPS URL scheme, excluding same-document navigations and errors.
</summary>
</histogram>
<histogram name="Navigation.IsSameBrowsingInstance"
enum="NavigationIsSameBrowsingInstance" expires_after="2025-01-01">
<owner>arthursonzogni@chromium.org</owner>
<owner>clamy@chromium.org</owner>
<owner>nasko@chromium.org</owner>
<summary>
Whether a main frame navigation led to a change of BrowsingInstance or not.
</summary>
</histogram>
<histogram name="Navigation.IsSameSiteInstance"
enum="NavigationIsSameSiteInstance" expires_after="2025-01-01">
<owner>arthursonzogni@chromium.org</owner>
<owner>clamy@chromium.org</owner>
<owner>nasko@chromium.org</owner>
<summary>
Whether the navigation led to a change of SiteInstance or not.
</summary>
</histogram>
<histogram name="Navigation.LatencyAblation.ExcessWaitTime" units="ms"
expires_after="2023-08-08">
<owner>ryansturm@chromium.org</owner>
<owner>spelchat@chromium.org</owner>
<summary>
The time the user waits beyond what is configured for the latency ablation
study. The enabled arms of the latency ablation study prescribe an amount of
time to delay the navigation, and this histogram records the amount of time
that was waited beyond that prescription. Recorded upon resuming the
navigation after the ablation occurs. This ablation occurs for most
navigations, but does not occur for subframes, prerenders, fenced frames,
bf/restore style navigations, and client redirects. The experiment can be
configured to only affect default search (or only affect non default
search).
</summary>
</histogram>
<histogram name="Navigation.LoadIfNecessaryType"
enum="NavigationNeedsReloadType" expires_after="never">
<!-- expires-never: Generally useful metric on Android that tracks number of automatic tab reloads and their cause. -->
<owner>boliu@chromium.org</owner>
<owner>alexmos@chromium.org</owner>
<owner>src/base/android/OWNERS</owner>
<summary>
The type of the source of a load from LoadIfNecessary. Recorded when
LoadIfNecessary starts a page load. For example, on Android,
kRequestedByClient is recorded when user switch back to a tab with a dead
renderer, which causes the tab to reload.
</summary>
</histogram>
<histogram name="Navigation.MainFrame.FrameCount" units="frames"
expires_after="2023-01-20">
<owner>michaelpg@chromium.org</owner>
<owner>yilkal@chromium.org</owner>
<owner>cros-families-eng@google.com</owner>
<summary>
The number of frames that are present in a WebContents. Recorded once when
the main frame finishes loading.
</summary>
</histogram>
<histogram name="Navigation.MainFrame.MaxFrameCount" units="frames"
expires_after="2023-11-19">
<owner>michaelpg@chromium.org</owner>
<owner>yilkal@chromium.org</owner>
<owner>cros-families-eng@google.com</owner>
<summary>
The maximum number of loaded frames that are present in a WebContents.
Recorded once when the main frame is moving away from current page. This can
be when the WebContents is being destroyed or when it starts loading new
content.
</summary>
</histogram>
<histogram
name="Navigation.MainFrame.RendererInitiated.InitiatorFramePresentAtStart"
enum="BooleanPresent" expires_after="2023-10-01">
<owner>yaoxia@chromium.org</owner>
<owner>cammie@chromium.org</owner>
<summary>
Whether the initiator frame is present when a renderer-initiated primary
main frame navigation has started. Recorded for each renderer-initiated
primary main frame navigation when the navigation has started (i.e. during
WebContentsObserver::DidStartNavigation()).
</summary>
</histogram>
<histogram name="Navigation.MainFrame.SiteEngagementLevel"
enum="SiteEngagementLevel" expires_after="2023-10-22">
<owner>meacer@chromium.org</owner>
<owner>security-enamel@chromium.org</owner>
<summary>
Site engagement level of the URL of the top frame of a navigation. Only
counts HTTP or HTTPS URLs and ignores downloads.
</summary>
</histogram>
<histogram name="Navigation.MainFrame.ThirdPartyCookieBlockingEnabled"
enum="ThirdPartyCookieBlockState" expires_after="2023-10-22">
<owner>dullweber@chromium.org</owner>
<owner>feuunk@chromium.org</owner>
<summary>
Records whether third party cookie blocking was enabled for a site. Recorded
for each main-frame navigation when that navigation commits. Only counts
HTTP or HTTPS URLs and ignores downloads.
</summary>
</histogram>
<histogram name="Navigation.MainFrameFormSubmission.SiteEngagementLevel"
enum="SiteEngagementLevel" expires_after="2021-04-04">
<owner>meacer@chromium.org</owner>
<owner>security-enamel@chromium.org</owner>
<summary>
Site engagement level of the URL of the top frame of a form submission. This
is a subset of Navigation.MainFrame.SiteEngagementLevel.
</summary>
</histogram>
<histogram name="Navigation.MainFrameHasRTLDomain2" enum="Boolean"
expires_after="2023-11-12">
<owner>cthomp@chromium.org</owner>
<owner>trusty-transport@chromium.org</owner>
<summary>
Whether the main-frame navigation was to a URL with an RTL domain name. This
is only recorded for finished navigations and not attempts. Warning: this
histogram was expired from M92 through M95; data may be missing.
</summary>
</histogram>
<histogram name="Navigation.MainFrameHasRTLDomainDifferentPage2" enum="Boolean"
expires_after="2023-11-12">
<owner>cthomp@chromium.org</owner>
<owner>trusty-transport@chromium.org</owner>
<summary>
Whether the main-frame navigation was to a URL with an RTL domain name,
recorded for each main-frame avigation that replaces a document object. This
is not reported for reference fragment navigations, pushState/replaceState
or same page history navigation. This is only recorded for finished
navigations and not attempts.
</summary>
</histogram>
<histogram name="Navigation.MainFrameProfileType2" enum="BrowserProfileType"
expires_after="2023-11-12">
<owner>rhalavati@chromium.org</owner>
<owner>chrome-privacy-core@google.com</owner>
<summary>
The browser profile type for each main-frame navigation, recorded after
navigation completion, including NTP.
</summary>
</histogram>
<histogram name="Navigation.MainFrameScheme2" enum="NavigationScheme"
expires_after="2024-01-15">
<owner>estark@chromium.org</owner>
<owner>elawrence@chromium.org</owner>
<owner>trusty-transport@chromium.org</owner>
<summary>
The scheme of the URL for each main-frame navigation. This is only recorded
for finished navigations and not attempts. Warning: this histogram was
expired from 2021-06-01 through M95; data may be missing.
</summary>
</histogram>
<histogram name="Navigation.MainFrameSchemeDifferentPage2"
enum="NavigationScheme" expires_after="never">