summaryrefslogtreecommitdiffstats
path: root/chrome/browser/metrics/user_metrics.h
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/metrics/user_metrics.h')
-rw-r--r--chrome/browser/metrics/user_metrics.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/chrome/browser/metrics/user_metrics.h b/chrome/browser/metrics/user_metrics.h
new file mode 100644
index 0000000..7c3ed4c
--- /dev/null
+++ b/chrome/browser/metrics/user_metrics.h
@@ -0,0 +1,41 @@
+// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROME_BROWSER_USER_METRICS_H__
+#define CHROME_BROWSER_USER_METRICS_H__
+
+#include <string>
+
+class Profile;
+
+// This module provides some helper functions for logging actions tracked by
+// the user metrics system.
+
+class UserMetrics {
+ public:
+ // Record that the user performed an action.
+ // "Action" here means a user-generated event:
+ // good: "Reload", "CloseTab", and "IMEInvoked"
+ // not good: "SSLDialogShown", "PageLoaded", "DiskFull"
+ // We use this to gather anonymized information about how users are
+ // interacting with the browser.
+ // WARNING: Call this function exactly like this, with the string literal
+ // inline:
+ // UserMetrics::RecordAction(L"foo bar", profile);
+ // because otherwise our processing scripts won't pick up on new actions.
+ //
+ // For more complicated situations (like when there are many different
+ // possible actions), see RecordComputedAction.
+ static void RecordAction(const wchar_t* action, Profile* profile);
+
+ // This function has identical input and behavior to RecordAction, but is
+ // not automatically found by the action-processing scripts. It can be used
+ // when it's a pain to enumerate all possible actions, but if you use this
+ // you need to also update the rules for extracting known actions.
+ static void RecordComputedAction(const std::wstring& action,
+ Profile* profile);
+};
+
+#endif // CHROME_BROWSER_USER_METRICS_H__
+