OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/renderer/page_load_histograms.h" | 5 #include "chrome/renderer/page_load_histograms.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/logging.h" | 10 #include "base/logging.h" |
(...skipping 393 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
404 PLT_HISTOGRAM("PLT.BeginToFinish_ContentPrefetcher", | 404 PLT_HISTOGRAM("PLT.BeginToFinish_ContentPrefetcher", |
405 begin_to_finish_all_loads); | 405 begin_to_finish_all_loads); |
406 } | 406 } |
407 if (document_state->was_referred_by_prefetcher()) { | 407 if (document_state->was_referred_by_prefetcher()) { |
408 PLT_HISTOGRAM("PLT.BeginToFinishDoc_ContentPrefetcherReferrer", | 408 PLT_HISTOGRAM("PLT.BeginToFinishDoc_ContentPrefetcherReferrer", |
409 begin_to_finish_doc); | 409 begin_to_finish_doc); |
410 PLT_HISTOGRAM("PLT.BeginToFinish_ContentPrefetcherReferrer", | 410 PLT_HISTOGRAM("PLT.BeginToFinish_ContentPrefetcherReferrer", |
411 begin_to_finish_all_loads); | 411 begin_to_finish_all_loads); |
412 } | 412 } |
413 | 413 |
414 // Histograms to determine if SDCH has an impact. | |
415 // TODO(jar): Consider removing per-link load types and the enumeration. | |
416 static const bool use_sdch_histogram = | |
417 base::FieldTrialList::TrialExists("GlobalSdch"); | |
418 if (use_sdch_histogram) { | |
419 UMA_HISTOGRAM_ENUMERATION( | |
420 base::FieldTrial::MakeName("PLT.LoadType", "GlobalSdch"), | |
421 load_type, DocumentState::kLoadTypeMax); | |
422 switch (load_type) { | |
423 case DocumentState::NORMAL_LOAD: | |
424 PLT_HISTOGRAM(base::FieldTrial::MakeName( | |
425 "PLT.BeginToFinish_NormalLoad", "GlobalSdch"), | |
426 begin_to_finish_all_loads); | |
427 break; | |
428 case DocumentState::LINK_LOAD_NORMAL: | |
429 PLT_HISTOGRAM(base::FieldTrial::MakeName( | |
430 "PLT.BeginToFinish_LinkLoadNormal", "GlobalSdch"), | |
431 begin_to_finish_all_loads); | |
432 break; | |
433 case DocumentState::LINK_LOAD_RELOAD: | |
434 PLT_HISTOGRAM(base::FieldTrial::MakeName( | |
435 "PLT.BeginToFinish_LinkLoadReload", "GlobalSdch"), | |
436 begin_to_finish_all_loads); | |
437 break; | |
438 case DocumentState::LINK_LOAD_CACHE_STALE_OK: | |
439 PLT_HISTOGRAM(base::FieldTrial::MakeName( | |
440 "PLT.BeginToFinish_LinkLoadStaleOk", "GlobalSdch"), | |
441 begin_to_finish_all_loads); | |
442 break; | |
443 case DocumentState::LINK_LOAD_CACHE_ONLY: | |
444 PLT_HISTOGRAM(base::FieldTrial::MakeName( | |
445 "PLT.BeginToFinish_LinkLoadCacheOnly", "GlobalSdch"), | |
446 begin_to_finish_all_loads); | |
447 break; | |
448 default: | |
449 break; | |
450 } | |
451 } | |
452 | |
453 // TODO(mpcomplete): remove the extension-related histograms after we collect | 414 // TODO(mpcomplete): remove the extension-related histograms after we collect |
454 // enough data. http://crbug.com/100411 | 415 // enough data. http://crbug.com/100411 |
455 const bool use_adblock_histogram = | 416 const bool use_adblock_histogram = |
456 chrome::ChromeContentRendererClient::IsAdblockInstalled(); | 417 chrome::ChromeContentRendererClient::IsAdblockInstalled(); |
457 if (use_adblock_histogram) { | 418 if (use_adblock_histogram) { |
458 UMA_HISTOGRAM_ENUMERATION( | 419 UMA_HISTOGRAM_ENUMERATION( |
459 "PLT.Abandoned_ExtensionAdblock", | 420 "PLT.Abandoned_ExtensionAdblock", |
460 abandoned_page ? 1 : 0, 2); | 421 abandoned_page ? 1 : 0, 2); |
461 switch (load_type) { | 422 switch (load_type) { |
462 case DocumentState::NORMAL_LOAD: | 423 case DocumentState::NORMAL_LOAD: |
(...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
749 | 710 |
750 DCHECK(document_state); | 711 DCHECK(document_state); |
751 DCHECK(ds); | 712 DCHECK(ds); |
752 GURL url(ds->request().url()); | 713 GURL url(ds->request().url()); |
753 Time start = document_state->start_load_time(); | 714 Time start = document_state->start_load_time(); |
754 Time finish = document_state->finish_load_time(); | 715 Time finish = document_state->finish_load_time(); |
755 // TODO(mbelshe): should we log more stats? | 716 // TODO(mbelshe): should we log more stats? |
756 VLOG(1) << "PLT: " << (finish - start).InMilliseconds() << "ms " | 717 VLOG(1) << "PLT: " << (finish - start).InMilliseconds() << "ms " |
757 << url.spec(); | 718 << url.spec(); |
758 } | 719 } |
OLD | NEW |