[go: nahoru, domu]

blob: d5f08dd0adb441861c716e1a601eaf5c106bf74d [file] [log] [blame]
// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "components/update_client/update_client_metrics.h"
#include <cstddef>
#include "base/metrics/histogram_functions.h"
#include "base/time/time.h"
namespace update_client::metrics {
void RecordBDMStartDownloadOutcome(BDMStartDownloadOutcome outcome) {
base::UmaHistogramEnumeration(
"UpdateClient.BackgroundDownloaderMac.StartDownloadOutcome", outcome);
}
void RecordBDMResultRequestorKnown(bool requestor_known) {
base::UmaHistogramBoolean(
"UpdateClient.BackgroundDownloaderMac.DownloadResultRequestorKnown",
requestor_known);
}
void RecordBDWNumJobsCleaned(size_t num_jobs_cleaned) {
base::UmaHistogramCounts100(
"UpdateClient.BackgroundDownloaderWin.StaleJobsCleaned",
num_jobs_cleaned);
}
void RecordBDWStaleDownloadAge(base::TimeDelta download_age) {
base::UmaHistogramCustomCounts(
"UpdateClient.BackgroundDownloaderWin.StaleDownloadAge",
download_age.InHours(), 0, base::Days(30).InHours(), 50);
}
void RecordBDWExistingJobUsed(bool existing_job_used) {
base::UmaHistogramBoolean(
"UpdateClient.BackgroundDownloaderWin.ExistingJobUsed",
existing_job_used);
}
void RecordCRXDownloadComplete(bool had_error) {
base::UmaHistogramBoolean(
"UpdateClient.CrxDownloader.DownloadCompleteSuccess", !had_error);
}
void RecordCRXDownloaderFallback() {
base::UmaHistogramBoolean("UpdateClient.CrxDownloader.Fallback", true);
}
void RecordUpdateCheckResult(UpdateCheckResult result) {
base::UmaHistogramEnumeration("UpdateClient.Component.UpdateCheckResult",
result);
}
void RecordCanUpdateResult(CanUpdateResult result) {
base::UmaHistogramEnumeration("UpdateClient.Component.CanUpdateResult",
result);
}
void RecordComponentUpdated() {
base::UmaHistogramBoolean("UpdateClient.Component.Updated", true);
}
} // namespace update_client::metrics