| 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 669 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 680 begin_to_finish_all_loads); | 680 begin_to_finish_all_loads); |
| 681 PLT_HISTOGRAM("PLT.StartToFinish_NormalLoad_cwndDynamic", | 681 PLT_HISTOGRAM("PLT.StartToFinish_NormalLoad_cwndDynamic", |
| 682 start_to_finish_all_loads); | 682 start_to_finish_all_loads); |
| 683 PLT_HISTOGRAM("PLT.StartToCommit_NormalLoad_cwndDynamic", | 683 PLT_HISTOGRAM("PLT.StartToCommit_NormalLoad_cwndDynamic", |
| 684 start_to_commit); | 684 start_to_commit); |
| 685 break; | 685 break; |
| 686 default: | 686 default: |
| 687 break; | 687 break; |
| 688 } | 688 } |
| 689 } | 689 } |
| 690 | |
| 691 // Record page load time and abandonment rates for proxy cases. | |
| 692 if (document_state->was_fetched_via_proxy()) { | |
| 693 if (scheme_type == URLPattern::SCHEME_HTTPS) { | |
| 694 PLT_HISTOGRAM("PLT.StartToFinish.Proxy.https", start_to_finish_all_loads); | |
| 695 } else { | |
| 696 DCHECK(scheme_type == URLPattern::SCHEME_HTTP); | |
| 697 PLT_HISTOGRAM("PLT.StartToFinish.Proxy.http", start_to_finish_all_loads); | |
| 698 } | |
| 699 } else { | |
| 700 if (scheme_type == URLPattern::SCHEME_HTTPS) { | |
| 701 PLT_HISTOGRAM("PLT.StartToFinish.NoProxy.https", | |
| 702 start_to_finish_all_loads); | |
| 703 } else { | |
| 704 DCHECK(scheme_type == URLPattern::SCHEME_HTTP); | |
| 705 PLT_HISTOGRAM("PLT.StartToFinish.NoProxy.http", | |
| 706 start_to_finish_all_loads); | |
| 707 } | |
| 708 } | |
| 709 } | 690 } |
| 710 | 691 |
| 711 } // namespace | 692 } // namespace |
| 712 | 693 |
| 713 PageLoadHistograms::PageLoadHistograms(content::RenderView* render_view) | 694 PageLoadHistograms::PageLoadHistograms(content::RenderView* render_view) |
| 714 : content::RenderViewObserver(render_view) { | 695 : content::RenderViewObserver(render_view) { |
| 715 } | 696 } |
| 716 | 697 |
| 717 void PageLoadHistograms::Dump(WebFrame* frame) { | 698 void PageLoadHistograms::Dump(WebFrame* frame) { |
| 718 // We only dump histograms for main frames. | 699 // We only dump histograms for main frames. |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 797 | 778 |
| 798 DCHECK(document_state); | 779 DCHECK(document_state); |
| 799 DCHECK(ds); | 780 DCHECK(ds); |
| 800 GURL url(ds->request().url()); | 781 GURL url(ds->request().url()); |
| 801 Time start = document_state->start_load_time(); | 782 Time start = document_state->start_load_time(); |
| 802 Time finish = document_state->finish_load_time(); | 783 Time finish = document_state->finish_load_time(); |
| 803 // TODO(mbelshe): should we log more stats? | 784 // TODO(mbelshe): should we log more stats? |
| 804 VLOG(1) << "PLT: " << (finish - start).InMilliseconds() << "ms " | 785 VLOG(1) << "PLT: " << (finish - start).InMilliseconds() << "ms " |
| 805 << url.spec(); | 786 << url.spec(); |
| 806 } | 787 } |
| OLD | NEW |