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

Unified Diff: components/feature_engagement_tracker/internal/persistent_store.cc

Issue 2911123003: Metrics for feature engagement tracker. (Closed)
Patch Set: Created 3 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: components/feature_engagement_tracker/internal/persistent_store.cc
diff --git a/components/feature_engagement_tracker/internal/persistent_store.cc b/components/feature_engagement_tracker/internal/persistent_store.cc
index 58ae423de72cc2f00c2bbcd2154ded9f02a75585..9be61087b9c65e2394e8964b714eb9b163f675fa 100644
--- a/components/feature_engagement_tracker/internal/persistent_store.cc
+++ b/components/feature_engagement_tracker/internal/persistent_store.cc
@@ -8,6 +8,7 @@
#include "base/bind.h"
#include "base/memory/ptr_util.h"
+#include "components/feature_engagement_tracker/internal/stats.h"
namespace feature_engagement_tracker {
namespace {
@@ -18,7 +19,10 @@ const char kDatabaseUMAName[] = "FeatureEngagementTrackerEventStore";
using KeyEventPair = std::pair<std::string, Event>;
using KeyEventList = std::vector<KeyEventPair>;
-void NoopUpdateCallback(bool success) {}
+void NoopUpdateCallback(bool success) {
+ stats::RecordDbUpdate(success, stats::StoreType::EVENTS_STORE);
+}
+
} // namespace
PersistentStore::PersistentStore(
@@ -48,7 +52,6 @@ void PersistentStore::WriteEvent(const Event& event) {
std::unique_ptr<KeyEventList> entries = base::MakeUnique<KeyEventList>();
entries->push_back(KeyEventPair(event.name(), event));
- // TODO(dtrainor, nyquist): Consider tracking failures here and storing UMA.
db_->UpdateEntries(std::move(entries),
base::MakeUnique<std::vector<std::string>>(),
base::Bind(&NoopUpdateCallback));
@@ -59,13 +62,14 @@ void PersistentStore::DeleteEvent(const std::string& event_name) {
auto deletes = base::MakeUnique<std::vector<std::string>>();
deletes->push_back(event_name);
- // TODO(dtrainor, nyquist): Consider tracking failures here and storing UMA.
db_->UpdateEntries(base::MakeUnique<KeyEventList>(), std::move(deletes),
base::Bind(&NoopUpdateCallback));
}
void PersistentStore::OnInitComplete(const OnLoadedCallback& callback,
bool success) {
+ stats::RecordDbInitEvent(success, stats::StoreType::EVENTS_STORE);
+
if (!success) {
callback.Run(false, base::MakeUnique<std::vector<Event>>());
return;
@@ -79,6 +83,7 @@ void PersistentStore::OnLoadComplete(
const OnLoadedCallback& callback,
bool success,
std::unique_ptr<std::vector<Event>> entries) {
+ stats::RecordEventDbLoadEvent(success, *entries.get());
ready_ = success;
callback.Run(success, std::move(entries));
}

Powered by Google App Engine
This is Rietveld 408576698