From 9e02620e931c3aa5f9c6462eda0c3ce050e691cb Mon Sep 17 00:00:00 2001 From: Jack He Date: Wed, 6 Feb 2019 21:53:41 -0800 Subject: Metrics: Log manfuacturer information from Device ID profile to statsd Bug: 112969790 Test: make, test drive with statsd Change-Id: Ie22aaad07037f97017186ad1f1d9ad124e4756c0 --- system/common/metrics.cc | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'system/common/metrics.cc') diff --git a/system/common/metrics.cc b/system/common/metrics.cc index f74234b3b9..cd58d0e579 100644 --- a/system/common/metrics.cc +++ b/system/common/metrics.cc @@ -827,6 +827,35 @@ void LogSocketConnectionState( } } +void LogManufacturerInfo(const RawAddress& address, + android::bluetooth::DeviceInfoSrcEnum source_type, + const std::string& source_name, + const std::string& manufacturer, + const std::string& model, + const std::string& hardware_version, + const std::string& software_version) { + std::string obfuscated_id; + if (!address.IsEmpty()) { + obfuscated_id = AddressObfuscator::GetInstance()->Obfuscate(address); + } + // nullptr and size 0 represent missing value for obfuscated_id + android::util::BytesField obfuscated_id_field( + address.IsEmpty() ? nullptr : obfuscated_id.c_str(), + address.IsEmpty() ? 0 : obfuscated_id.size()); + int ret = android::util::stats_write( + android::util::BLUETOOTH_DEVICE_INFO_REPORTED, obfuscated_id_field, + source_type, source_name.c_str(), manufacturer.c_str(), model.c_str(), + hardware_version.c_str(), software_version.c_str()); + if (ret < 0) { + LOG(WARNING) << __func__ << ": failed for " << address << ", source_type " + << source_type << ", source_name " << source_name + << ", manufacturer " << manufacturer << ", model " << model + << ", hardware_version " << hardware_version + << ", software_version " << software_version << ", error " + << ret; + } +} + } // namespace common } // namespace bluetooth -- cgit v1.2.3-59-g8ed1b