Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(329)

Side by Side Diff: chrome/browser/prerender/prerender_final_status.cc

Issue 7210020: Added prerendering to omnibox. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: More histograms/rebase Created 9 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/browser/prerender/prerender_final_status.h" 5 #include "chrome/browser/prerender/prerender_final_status.h"
6 6
7 #include "base/metrics/histogram.h" 7 #include "base/metrics/histogram.h"
8 #include "chrome/browser/prerender/prerender_manager.h" 8 #include "chrome/browser/prerender/prerender_manager.h"
9 9
10 namespace prerender { 10 namespace prerender {
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 "Fragment Mismatch", 44 "Fragment Mismatch",
45 "SSL Client Certificate Requested", 45 "SSL Client Certificate Requested",
46 "Cache or History Cleared", 46 "Cache or History Cleared",
47 "Max", 47 "Max",
48 }; 48 };
49 COMPILE_ASSERT(arraysize(kFinalStatusNames) == FINAL_STATUS_MAX + 1, 49 COMPILE_ASSERT(arraysize(kFinalStatusNames) == FINAL_STATUS_MAX + 1,
50 PrerenderFinalStatus_name_count_mismatch); 50 PrerenderFinalStatus_name_count_mismatch);
51 51
52 } 52 }
53 53
54 void RecordFinalStatus(FinalStatus final_status) { 54 void RecordFinalStatus(Origin origin, FinalStatus final_status) {
55 DCHECK(final_status != FINAL_STATUS_MAX); 55 DCHECK(final_status != FINAL_STATUS_MAX);
56 // FINAL_STATUS_CONTROL_GROUP indicates that the PrerenderContents 56 // FINAL_STATUS_CONTROL_GROUP indicates that the PrerenderContents
57 // was created only to measure "would-have-been-prerendered" for 57 // was created only to measure "would-have-been-prerendered" for
58 // control group measurements. Don't pollute data with it. 58 // control group measurements. Don't pollute data with it.
59 if (PrerenderManager::IsControlGroup() || 59 if (PrerenderManager::IsControlGroup() ||
60 final_status == FINAL_STATUS_CONTROL_GROUP) 60 final_status == FINAL_STATUS_CONTROL_GROUP)
61 return; 61 return;
62 UMA_HISTOGRAM_ENUMERATION("Prerender.FinalStatus", 62 UMA_HISTOGRAM_ENUMERATION("Prerender.FinalStatus",
63 final_status, 63 final_status,
64 FINAL_STATUS_MAX); 64 FINAL_STATUS_MAX);
65 switch (origin) {
66 case ORIGIN_LINK_REL_PRERENDER:
67 case ORIGIN_PENDING_LINK_REL_PRERENDER:
68 UMA_HISTOGRAM_ENUMERATION("Prerender.FinalStatusLinkRelPrerender",
cbentzel 2011/06/22 17:27:32 Should these be done as Prerender.FinalStatus_Li
dominich 2011/06/22 19:00:51 Done.
69 final_status,
70 FINAL_STATUS_MAX);
71 break;
72 case ORIGIN_OMNIBOX:
73 UMA_HISTOGRAM_ENUMERATION("Prerender.FinalStatusOmnibox",
74 final_status,
75 FINAL_STATUS_MAX);
76 break;
77 default:
78 LOG(WARNING) << "Not logging final status for origin " <<
cbentzel 2011/06/22 17:27:32 This should be a NOTREACHED();
dominich 2011/06/22 19:00:51 Done.
79 NameFromOrigin(origin);
80 break;
81 };
65 } 82 }
66 83
67 const char* NameFromFinalStatus(FinalStatus final_status) { 84 const char* NameFromFinalStatus(FinalStatus final_status) {
68 DCHECK(static_cast<int>(final_status) >= 0 && 85 DCHECK(static_cast<int>(final_status) >= 0 &&
69 static_cast<int>(final_status) <= FINAL_STATUS_MAX); 86 static_cast<int>(final_status) <= FINAL_STATUS_MAX);
70 return kFinalStatusNames[final_status]; 87 return kFinalStatusNames[final_status];
71 } 88 }
72 89
73 } // namespace prerender 90 } // namespace prerender
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698