Index: base/debug/trace_event_impl.cc |
diff --git a/base/debug/trace_event_impl.cc b/base/debug/trace_event_impl.cc |
index e8b3083339cb14a72a2e338f2857bbfc8063f9f0..bbe99ac8cc4fb74417009878b5928a0fd8a37fae 100644 |
--- a/base/debug/trace_event_impl.cc |
+++ b/base/debug/trace_event_impl.cc |
@@ -773,6 +773,7 @@ TraceLog::Options TraceLog::TraceOptionsFromString(const std::string& options) { |
TraceLog::TraceLog() |
: enable_count_(0), |
+ num_traces_recorded_(0), |
logged_events_(NULL), |
dispatching_to_observer_list_(false), |
watch_category_(NULL), |
@@ -927,6 +928,8 @@ void TraceLog::SetEnabled(const CategoryFilter& category_filter, |
return; |
} |
+ num_traces_recorded_++; |
+ |
dispatching_to_observer_list_ = true; |
FOR_EACH_OBSERVER(EnabledStateChangedObserver, enabled_state_observer_list_, |
OnTraceLogWillEnable()); |
@@ -1001,6 +1004,13 @@ void TraceLog::SetDisabled() { |
AddThreadNameMetadataEvents(); |
} |
+int TraceLog::GetNumTracesRecorded() { |
+ AutoLock lock(lock_); |
+ if (enable_count_ == 0) |
+ return -1; |
+ return num_traces_recorded_; |
+} |
+ |
void TraceLog::AddEnabledStateObserver(EnabledStateChangedObserver* listener) { |
enabled_state_observer_list_.AddObserver(listener); |
} |
@@ -1511,4 +1521,3 @@ ScopedTrace::~ScopedTrace() { |
} |
} // namespace trace_event_internal |
- |