| // Copyright 2017 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef COMPONENTS_UKM_UNSENT_LOG_STORE_METRICS_IMPL_H_ |
| #define COMPONENTS_UKM_UNSENT_LOG_STORE_METRICS_IMPL_H_ |
| |
| #include "base/macros.h" |
| #include "components/metrics/unsent_log_store_metrics.h" |
| |
| namespace ukm { |
| |
| // Implementation for recording metrics from UnsentLogStore. |
| class UnsentLogStoreMetricsImpl : public metrics::UnsentLogStoreMetrics { |
| public: |
| UnsentLogStoreMetricsImpl(); |
| ~UnsentLogStoreMetricsImpl() override; |
| |
| // metrics::UnsentLogStoreMetrics: |
| void RecordLogReadStatus( |
| metrics::UnsentLogStoreMetrics::LogReadStatus status) override; |
| void RecordCompressionRatio(size_t compressed_size, |
| size_t original_size) override; |
| void RecordDroppedLogSize(size_t size) override; |
| void RecordDroppedLogsNum(int dropped_logs_num) override; |
| |
| private: |
| DISALLOW_COPY_AND_ASSIGN(UnsentLogStoreMetricsImpl); |
| }; |
| |
| } // namespace ukm |
| |
| #endif // COMPONENTS_UKM_UNSENT_LOG_STORE_METRICS_IMPL_H_ |