summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkaznacheev@chromium.org <kaznacheev@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-11 12:23:14 +0000
committerkaznacheev@chromium.org <kaznacheev@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-11 12:23:14 +0000
commitc7959c98c6625ad4e0758bd8e95e35be3442219a (patch)
tree30610c37af616c783cafbb1473e809863d28f4d3
parent478e36bc165d74ff817d572ac033e505fbbabf33 (diff)
downloadchromium_src-c7959c98c6625ad4e0758bd8e95e35be3442219a.zip
chromium_src-c7959c98c6625ad4e0758bd8e95e35be3442219a.tar.gz
chromium_src-c7959c98c6625ad4e0758bd8e95e35be3442219a.tar.bz2
Cleanup FileBrowser.Create.* UMA events
BUG=chromium-os:22859 TEST= Review URL: http://codereview.chromium.org/8491038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109619 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/resources/file_manager/js/file_manager.js23
-rw-r--r--chrome/browser/resources/file_manager/js/metrics.js23
-rw-r--r--chrome/browser/resources/file_manager/js/mock_chrome.js2
3 files changed, 40 insertions, 8 deletions
diff --git a/chrome/browser/resources/file_manager/js/file_manager.js b/chrome/browser/resources/file_manager/js/file_manager.js
index 59b042f..41fd6f3 100644
--- a/chrome/browser/resources/file_manager/js/file_manager.js
+++ b/chrome/browser/resources/file_manager/js/file_manager.js
@@ -56,7 +56,12 @@ function FileManager(dialogDom, filesystem, rootEntries) {
this.document_ = dialogDom.ownerDocument;
this.dialogType_ = this.params_.type || FileManager.DialogType.FULL_PAGE;
- metrics.recordAction('Create.' + this.dialogType_);
+ metrics.recordEnum('Create', this.dialogType_,
+ [FileManager.DialogType.SELECT_FOLDER,
+ FileManager.DialogType.SELECT_SAVEAS_FILE,
+ FileManager.DialogType.SELECT_OPEN_FILE,
+ FileManager.DialogType.SELECT_OPEN_MULTI_FILE,
+ FileManager.DialogType.FULL_PAGE]);
this.initDialogs_();
@@ -2927,13 +2932,19 @@ FileManager.prototype = {
var self = this;
var reader;
+ function rescanDone() {
+ metrics.recordTime('ScanDirectory');
+ if (self.currentDirEntry_.fullPath == DOWNLOADS_DIRECTORY)
+ metrics.reportCount("DownloadsCount", self.dataModel_.length);
+ if (opt_callback)
+ opt_callback();
+ }
+
metrics.startInterval('ScanDirectory');
function onReadSome(entries) {
if (entries.length == 0) {
- metrics.recordTime('ScanDirectory');
- if (opt_callback)
- opt_callback();
+ rescanDone();
return;
}
@@ -2982,9 +2993,7 @@ FileManager.prototype = {
spliceArgs.unshift(0, 0); // index, deleteCount
self.dataModel_.splice.apply(self.dataModel_, spliceArgs);
- metrics.recordTime('ScanDirectory');
- if (opt_callback)
- opt_callback();
+ rescanDone();
};
FileManager.prototype.findListItem_ = function(event) {
diff --git a/chrome/browser/resources/file_manager/js/metrics.js b/chrome/browser/resources/file_manager/js/metrics.js
index 8d52f17..ebef967 100644
--- a/chrome/browser/resources/file_manager/js/metrics.js
+++ b/chrome/browser/resources/file_manager/js/metrics.js
@@ -36,4 +36,25 @@ metrics.recordTime = function(name) {
metrics.recordAction = function(name) {
chrome.experimental.metrics.recordUserAction(metrics.convertName_(name));
-}; \ No newline at end of file
+};
+
+metrics.reportCount = function(name, value) {
+ chrome.experimental.metrics.
+ recordMediumCount(metrics.convertName_(name), value);
+};
+
+metrics.recordEnum = function(name, value, validValues) {
+ var index = validValues.indexOf(value);
+
+ // Collect invalid values in the extra bucket at the end.
+ if (index < 0) index = validValues.length;
+
+ chrome.experimental.metrics.recordValue({
+ 'metricName': metrics.convertName_(name),
+ 'type': 'histogram-linear',
+ 'min': 0,
+ 'max': validValues.length,
+ 'buckets': validValues.length + 1
+ },
+ index);
+};
diff --git a/chrome/browser/resources/file_manager/js/mock_chrome.js b/chrome/browser/resources/file_manager/js/mock_chrome.js
index df396ec..6accbd15 100644
--- a/chrome/browser/resources/file_manager/js/mock_chrome.js
+++ b/chrome/browser/resources/file_manager/js/mock_chrome.js
@@ -391,6 +391,8 @@ chrome.tabs = {
chrome.experimental = {
metrics: {
+ recordValue: function() {},
+ recordMediumCount: function() {},
recordTime: function() {},
recordUserAction: function() {}
}