diff options
Diffstat (limited to 'cmds/statsd/src/StatsLogProcessor.cpp')
-rw-r--r-- | cmds/statsd/src/StatsLogProcessor.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/cmds/statsd/src/StatsLogProcessor.cpp b/cmds/statsd/src/StatsLogProcessor.cpp index 8e02f9cb7628..f4c70bee2806 100644 --- a/cmds/statsd/src/StatsLogProcessor.cpp +++ b/cmds/statsd/src/StatsLogProcessor.cpp @@ -257,12 +257,18 @@ size_t StatsLogProcessor::GetMetricsSize(const ConfigKey& key) const { return it->second->byteSize(); } -void StatsLogProcessor::dumpStates(FILE* out, bool verbose) { +void StatsLogProcessor::dumpStates(int out, bool verbose) { std::lock_guard<std::mutex> lock(mMetricsMutex); - fprintf(out, "MetricsManager count: %lu\n", (unsigned long)mMetricsManagers.size()); + FILE* fout = fdopen(out, "w"); + if (fout == NULL) { + return; + } + fprintf(fout, "MetricsManager count: %lu\n", (unsigned long)mMetricsManagers.size()); for (auto metricsManager : mMetricsManagers) { - metricsManager.second->dumpStates(out, verbose); + metricsManager.second->dumpStates(fout, verbose); } + + fclose(fout); } /* |