update_engine: Add UMA stats for rollback
Adding the following UMA stats:
- UpdateEngine.Check.TargetVersion: first section of the Chrome OS
target version set by device policy. Sent during update checks if
target version policy is set.
- UpdateEngine.Check.RollbackTargetVersion: first section of the
Chrome OS target version if rollback is also allowed. Sent during
update checks if both policies are set.
- UpdateEngine.EnterpriseRollback.Success: first section of the
Chrome OS version to which rollback succeeded. Sent after
successful installation of the rollback image.
- UpdateEngine.EnterpriseRollback.Failure: first section of the
Chrome OS version to which rollback failed. Sent after
installation of the rollback image failed.
Chromium CL of the new histograms: crrev.com/c/1069129
BUG=chromium:843622
TEST='cros_run_unit_tests --board=caroline --packages update_engine'
Change-Id: I0b76fa286498ae0a1830a90034734ed9aa5efd3d
Reviewed-on: https://chromium-review.googlesource.com/1062033
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Tested-by: Marton Hunyady <hunyadym@chromium.org>
Reviewed-by: Amin Hassani <ahassani@chromium.org>
Reviewed-by: Jesse Doherty <jwd@chromium.org>
diff --git a/mock_metrics_reporter.h b/mock_metrics_reporter.h
index a4e0a12..d080ce8 100644
--- a/mock_metrics_reporter.h
+++ b/mock_metrics_reporter.h
@@ -17,6 +17,8 @@
#ifndef UPDATE_ENGINE_MOCK_METRICS_REPORTER_H
#define UPDATE_ENGINE_MOCK_METRICS_REPORTER_H
+#include <string>
+
#include <gmock/gmock.h>
#include "update_engine/metrics_reporter_interface.h"
@@ -29,6 +31,9 @@
MOCK_METHOD1(ReportRollbackMetrics, void(metrics::RollbackResult result));
+ MOCK_METHOD2(ReportEnterpriseRollbackMetrics,
+ void(bool success, const std::string& rollback_version));
+
MOCK_METHOD1(ReportDailyMetrics, void(base::TimeDelta os_age));
MOCK_METHOD4(ReportUpdateCheckMetrics,