diff options
| author | 2018-05-10 02:02:37 +0000 | |
|---|---|---|
| committer | 2018-05-10 02:02:37 +0000 | |
| commit | 3f57b16deb78134cf4690819a844f4d941c01710 (patch) | |
| tree | e15347c22a5db1dea81921f49c20ccb3f544fc0b | |
| parent | 7c3c4d38a9e0e39c1c4e2a9ed812465690c530bc (diff) | |
| parent | 028091cb15f5e8290eed77a222582162d19a3d87 (diff) | |
Merge "Skip writing metrics to disk if it's entirely composed of no_report_metric" into pi-dev
| -rw-r--r-- | cmds/statsd/src/StatsLogProcessor.cpp | 3 | ||||
| -rw-r--r-- | cmds/statsd/src/metrics/MetricsManager.h | 4 |
2 files changed, 6 insertions, 1 deletions
diff --git a/cmds/statsd/src/StatsLogProcessor.cpp b/cmds/statsd/src/StatsLogProcessor.cpp index daafe9c0390d..8487e6794873 100644 --- a/cmds/statsd/src/StatsLogProcessor.cpp +++ b/cmds/statsd/src/StatsLogProcessor.cpp @@ -503,7 +503,8 @@ void StatsLogProcessor::flushIfNecessaryLocked( void StatsLogProcessor::WriteDataToDiskLocked(const ConfigKey& key, const int64_t timestampNs, const DumpReportReason dumpReportReason) { - if (mMetricsManagers.find(key) == mMetricsManagers.end()) { + if (mMetricsManagers.find(key) == mMetricsManagers.end() || + !mMetricsManagers.find(key)->second->shouldWriteToDisk()) { return; } ProtoOutputStream proto; diff --git a/cmds/statsd/src/metrics/MetricsManager.h b/cmds/statsd/src/metrics/MetricsManager.h index 456da982bd9b..e143b5a582dd 100644 --- a/cmds/statsd/src/metrics/MetricsManager.h +++ b/cmds/statsd/src/metrics/MetricsManager.h @@ -67,6 +67,10 @@ public: return !mAllowedPkg.empty(); } + bool shouldWriteToDisk() const { + return mNoReportMetricIds.size() != mAllMetricProducers.size(); + } + void dumpStates(FILE* out, bool verbose); inline bool isInTtl(const int64_t timestampNs) const { |