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

Unified Diff: chrome/browser/metrics/metrics_log.cc

Issue 83023006: Remove plugin_list param from MetricsLog::RecordStabilityMetrics. (Closed) Base URL: http://src.chromium.org/svn/trunk/src/
Patch Set: Created 7 years, 1 month 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/metrics/metrics_log.h ('k') | chrome/browser/metrics/metrics_log_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/metrics/metrics_log.cc
===================================================================
--- chrome/browser/metrics/metrics_log.cc (revision 236788)
+++ chrome/browser/metrics/metrics_log.cc (working copy)
@@ -424,11 +424,12 @@
}
void MetricsLog::RecordStabilityMetrics(
- const std::vector<content::WebPluginInfo>& plugin_list,
base::TimeDelta incremental_uptime,
LogType log_type) {
DCHECK_NE(NO_LOG, log_type);
DCHECK(!locked());
+ // Check UMA enabled date presence to ensure system profile has been filled.
+ DCHECK(uma_proto()->system_profile().has_uma_enabled_date());
PrefService* pref = GetPrefService();
DCHECK(pref);
@@ -438,7 +439,7 @@
// sent, but that's true for all the metrics.
WriteRequiredStabilityAttributes(pref);
- WritePluginStabilityElements(plugin_list, pref);
+ WritePluginStabilityElements(pref);
// Record recent delta for critical stability metrics. We can't wait for a
// restart to gather these, as that delay biases our observation away from
@@ -502,9 +503,7 @@
chrome_variations::GetFieldTrialActiveGroupIds(field_trial_ids);
}
-void MetricsLog::WritePluginStabilityElements(
- const std::vector<content::WebPluginInfo>& plugin_list,
- PrefService* pref) {
+void MetricsLog::WritePluginStabilityElements(PrefService* pref) {
// Now log plugin stability info.
const ListValue* plugin_stats_list = pref->GetList(
prefs::kStabilityPluginStats);
@@ -514,7 +513,6 @@
#if defined(ENABLE_PLUGINS)
SystemProfileProto::Stability* stability =
uma_proto()->mutable_system_profile()->mutable_stability();
- PluginPrefs* plugin_prefs = GetPluginPrefs();
for (ListValue::const_iterator iter = plugin_stats_list->begin();
iter != plugin_stats_list->end(); ++iter) {
if (!(*iter)->IsType(Value::TYPE_DICTIONARY)) {
@@ -523,34 +521,30 @@
}
DictionaryValue* plugin_dict = static_cast<DictionaryValue*>(*iter);
- // Write the protobuf version.
// Note that this search is potentially a quadratic operation, but given the
// low number of plugins installed on a "reasonable" setup, this should be
// fine.
// TODO(isherman): Verify that this does not show up as a hotspot in
// profiler runs.
- const content::WebPluginInfo* plugin_info = NULL;
+ const SystemProfileProto::Plugin* system_profile_plugin = NULL;
std::string plugin_name;
plugin_dict->GetString(prefs::kStabilityPluginName, &plugin_name);
- const string16 plugin_name_utf16 = UTF8ToUTF16(plugin_name);
- for (std::vector<content::WebPluginInfo>::const_iterator iter =
- plugin_list.begin();
- iter != plugin_list.end(); ++iter) {
- if (iter->name == plugin_name_utf16) {
- plugin_info = &(*iter);
+ const SystemProfileProto& system_profile = uma_proto()->system_profile();
+ for (int i = 0; i < system_profile.plugin_size(); ++i) {
+ if (system_profile.plugin(i).name() == plugin_name) {
+ system_profile_plugin = &system_profile.plugin(i);
break;
}
}
- if (!plugin_info) {
+ if (!system_profile_plugin) {
NOTREACHED();
continue;
}
SystemProfileProto::Stability::PluginStability* plugin_stability =
stability->add_plugin_stability();
- SetPluginInfo(*plugin_info, plugin_prefs,
- plugin_stability->mutable_plugin());
+ *plugin_stability->mutable_plugin() = *system_profile_plugin;
int launches = 0;
plugin_dict->GetInteger(prefs::kStabilityPluginLaunches, &launches);
@@ -599,7 +593,7 @@
base::TimeDelta incremental_uptime) {
// Update the stats which are critical for real-time stability monitoring.
// Since these are "optional," only list ones that are non-zero, as the counts
- // are aggergated (summed) server side.
+ // are aggregated (summed) server side.
SystemProfileProto::Stability* stability =
uma_proto()->mutable_system_profile()->mutable_stability();
« no previous file with comments | « chrome/browser/metrics/metrics_log.h ('k') | chrome/browser/metrics/metrics_log_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698