Commit dd9bd5f8 authored by Satoshi Niwa's avatar Satoshi Niwa Committed by Commit Bot

ArcSessionManager : Use TimeTicks for arc_start_time and sign_in_start_time

Also update ArcPolicyBridge, the sole user of these time values.

Context : We have been using SessionManagerImpl::GetArcStartTimeTicks()
for perf measurements, etc, but this doesn't work for ARCVM.
This CL makes ArcSessionManager.arc_start_time() equivalent to
SessionManagerImpl::GetArcStartTimeTicks() by using TimeTicks.

Bug: b/140361966
Test: try
Change-Id: Ic935ccdf8b2177abb0644551a3b422a5e5c0c25c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1783687Reviewed-by: default avatarYusuke Sato <yusukes@chromium.org>
Commit-Queue: Satoshi Niwa <niwa@chromium.org>
Cr-Commit-Position: refs/heads/master@{#693157}
parent 138a8290
......@@ -336,7 +336,7 @@ void ArcSessionManager::OnProvisioningFinished(ProvisioningResult result) {
} else if (!sign_in_start_time_.is_null()) {
arc_sign_in_timer_.Stop();
UpdateProvisioningTiming(base::Time::Now() - sign_in_start_time_,
UpdateProvisioningTiming(base::TimeTicks::Now() - sign_in_start_time_,
provisioning_successful, profile_);
UpdateProvisioningResultUMA(result, profile_);
if (!provisioning_successful)
......@@ -930,7 +930,7 @@ void ArcSessionManager::OnAndroidManagementChecked(
switch (result) {
case policy::AndroidManagementClient::Result::UNMANAGED:
VLOG(1) << "Starting ARC for first sign in.";
sign_in_start_time_ = base::Time::Now();
sign_in_start_time_ = base::TimeTicks::Now();
arc_sign_in_timer_.Start(
FROM_HERE, kArcSignInTimeout,
base::Bind(&ArcSessionManager::OnArcSignInTimeout,
......@@ -1007,7 +1007,7 @@ void ArcSessionManager::StartArc() {
for (auto& observer : observer_list_)
observer.OnArcStarted();
arc_start_time_ = base::Time::Now();
arc_start_time_ = base::TimeTicks::Now();
provisioning_reported_ = false;
std::string locale;
......
......@@ -221,11 +221,11 @@ class ArcSessionManager : public ArcSessionRunner::Observer,
// Returns the time when the sign in process started, or a null time if
// signing in didn't happen during this session.
base::Time sign_in_start_time() const { return sign_in_start_time_; }
base::TimeTicks sign_in_start_time() const { return sign_in_start_time_; }
// Returns the time when ARC was about to start, or a null time if ARC has not
// been started yet.
base::Time arc_start_time() const { return arc_start_time_; }
base::TimeTicks arc_start_time() const { return arc_start_time_; }
// Returns true if ARC requested to start.
bool enable_requested() const { return enable_requested_; }
......@@ -377,9 +377,9 @@ class ArcSessionManager : public ArcSessionRunner::Observer,
std::unique_ptr<ArcFastAppReinstallStarter> fast_app_reinstall_starter_;
// The time when the sign in process started.
base::Time sign_in_start_time_;
base::TimeTicks sign_in_start_time_;
// The time when ARC was about to start.
base::Time arc_start_time_;
base::TimeTicks arc_start_time_;
base::Closure attempt_user_exit_callback_;
ArcAppIdProviderImpl app_id_provider_;
......
......@@ -494,7 +494,7 @@ void ArcPolicyBridge::OnPolicyUpdated(const policy::PolicyNamespace& ns,
const std::string policies_hash = GetPoliciesHash(GetCurrentJSONPolicies());
if (policies_hash != update_notification_policies_hash_) {
update_notification_policies_hash_ = policies_hash;
update_notification_time_ = base::Time::Now();
update_notification_time_ = base::TimeTicks::Now();
compliance_since_update_timing_reported_ = false;
}
......@@ -574,12 +574,13 @@ void ArcPolicyBridge::UpdateComplianceReportMetrics(
if (!is_arc_plus_plus_report_successful || reported_policies_hash.empty())
return;
const base::Time now = base::Time::Now();
const base::TimeTicks now = base::TimeTicks::Now();
ArcSessionManager* const session_manager = ArcSessionManager::Get();
if (reported_policies_hash == initial_policies_hash_ &&
!first_compliance_timing_reported_) {
const base::Time sign_in_start_time = session_manager->sign_in_start_time();
const base::TimeTicks sign_in_start_time =
session_manager->sign_in_start_time();
if (!sign_in_start_time.is_null()) {
UpdateFirstComplianceSinceSignInTiming(now - sign_in_start_time);
} else {
......
......@@ -189,7 +189,7 @@ class ArcPolicyBridge : public KeyedService,
std::string update_notification_policies_hash_;
// The time of the policy update notification sent when the policy with hash
// equal to |update_notification_policy_hash_| was active.
base::Time update_notification_time_;
base::TimeTicks update_notification_time_;
// Whether the UMA metric for the successfully obtained compliance report
// since the most recent policy update notificaton was already reported.
bool compliance_since_update_timing_reported_ = false;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment