Index: chrome/browser/android/data_usage/external_data_use_observer.cc |
diff --git a/chrome/browser/android/data_usage/external_data_use_observer.cc b/chrome/browser/android/data_usage/external_data_use_observer.cc |
index 94e9e0607003bfd3c5f19c56a7f22dae867d9a14..8921b62c002da4b95a7236755e2c33078fdb2439 100644 |
--- a/chrome/browser/android/data_usage/external_data_use_observer.cc |
+++ b/chrome/browser/android/data_usage/external_data_use_observer.cc |
@@ -205,6 +205,9 @@ void ExternalDataUseObserver::OnReportDataUseDone(bool success) { |
RecordDataUsageReportSubmission(DATAUSAGE_REPORT_SUBMISSION_FAILED, |
pending_report_bytes_); |
} |
+ UMA_HISTOGRAM_TIMES( |
Raj
2016/01/13 23:33:51
Here again, the duration includes 2 thread hops.
S
tbansal1
2016/01/14 06:59:55
Delay due to thread hop can sometimes be large. I
|
+ "DataUsage.Perf.ReportSubmissionDuration", |
+ base::TimeTicks::Now() - last_data_report_submitted_ticks_); |
last_data_report_submitted_ticks_ = base::TimeTicks(); |
pending_report_bytes_ = 0; |
@@ -212,6 +215,13 @@ void ExternalDataUseObserver::OnReportDataUseDone(bool success) { |
SubmitBufferedDataUseReport(false); |
} |
+void ExternalDataUseObserver::OnFetchMatchingRulesDone() const { |
+ DCHECK(thread_checker_.CalledOnValidThread()); |
+ DCHECK(!last_matching_rules_fetch_time_.is_null()); |
+ UMA_HISTOGRAM_TIMES("DataUsage.Perf.MatchingRuleFetchDuration", |
+ base::TimeTicks::Now() - last_matching_rules_fetch_time_); |
+} |
+ |
#if defined(OS_ANDROID) |
void ExternalDataUseObserver::OnApplicationStateChange( |
base::android::ApplicationState new_state) { |