eche_connection_metrics_recorder.cc 1.2 KB

123456789101112131415161718192021222324252627282930313233
  1. // Copyright 2022 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #include "ash/webui/eche_app_ui/eche_connection_metrics_recorder.h"
  5. #include "ash/services/secure_channel/public/mojom/secure_channel.mojom.h"
  6. #include "base/metrics/histogram_functions.h"
  7. namespace ash::eche_app {
  8. EcheConnectionMetricsRecorder::EcheConnectionMetricsRecorder() = default;
  9. EcheConnectionMetricsRecorder::~EcheConnectionMetricsRecorder() = default;
  10. void EcheConnectionMetricsRecorder::RecordConnectionResult(bool success) {
  11. base::UmaHistogramBoolean("Eche.Connection.Result", success);
  12. }
  13. void EcheConnectionMetricsRecorder::RecordConnectionFailureReason(
  14. secure_channel::mojom::ConnectionAttemptFailureReason reason) {
  15. base::UmaHistogramEnumeration("Eche.Connection.Result.FailureReason", reason);
  16. }
  17. void EcheConnectionMetricsRecorder::RecordConnectionLatency(
  18. const base::TimeDelta latency) {
  19. base::UmaHistogramTimes("Eche.Connectivity.Latency", latency);
  20. }
  21. void EcheConnectionMetricsRecorder::RecordConnectionDuration(
  22. const base::TimeDelta duration) {
  23. base::UmaHistogramLongTimes100("Eche.Connection.Duration", duration);
  24. }
  25. } // namespace ash::eche_app