blob: dc73ce9916eeaca7fe0b4ecd2f0ca01d60d237c4 [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/metrics/debug/structured/structured_metrics_utils.h"
#include "base/i18n/number_formatting.h"
#include "base/strings/string_number_conversions.h"
#include "components/metrics/structured/structured_metrics_service.h"
namespace metrics::structured {
base::Value GetStructuredMetricsSummary(StructuredMetricsService* service) {
base::Value::Dict result = base::Value::Dict().Set("enabled", false);
#if BUILDFLAG(IS_CHROMEOS)
result.Set("crosDeviceId", "-");
#endif
if (service && service->recording_enabled()) {
result.Set("enabled", true);
#if BUILDFLAG(IS_CHROMEOS)
auto id =
service->recorder()->key_data_provider()->GetSecondaryId("CrOSEvents");
if (id.has_value()) {
result.Set("crosDeviceId", base::NumberToString(id.value()));
}
#endif
}
return base::Value(std::move(result));
}
} // namespace metrics::structured