Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(720)

Unified Diff: content/browser/tracing/background_tracing_manager_impl.h

Issue 1243743002: Slow Reports - Add message filter to trigger background traces from child processes. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Merged into TraceMessageFilter. Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/tracing/background_tracing_manager_impl.h
diff --git a/content/browser/tracing/background_tracing_manager_impl.h b/content/browser/tracing/background_tracing_manager_impl.h
index 6ad99bbe59f743dd15e58d754da7ddb871c0acb8..952496d1cedafcbd691b5db8cc18cd06a32cf77e 100644
--- a/content/browser/tracing/background_tracing_manager_impl.h
+++ b/content/browser/tracing/background_tracing_manager_impl.h
@@ -16,6 +16,7 @@
namespace content {
+class TraceMessageFilter;
class TracingDelegate;
class BackgroundTracingManagerImpl : public content::BackgroundTracingManager {
@@ -37,10 +38,16 @@ class BackgroundTracingManagerImpl : public content::BackgroundTracingManager {
void FireTimerForTesting() override;
bool HasActiveScenarioForTesting() override;
+ void AddFilter(scoped_refptr<TraceMessageFilter> filter);
+ void RemoveFilter(scoped_refptr<TraceMessageFilter> filter);
+
+ void OnHistogramTrigger(const std::string& histogram_name) override;
+
private:
BackgroundTracingManagerImpl();
~BackgroundTracingManagerImpl() override;
+ void CreateDelegate();
void EnableRecording(std::string, base::trace_event::TraceRecordMode);
void EnableRecordingIfConfigNeedsIt();
void OnFinalizeStarted(base::RefCountedString*);
@@ -53,9 +60,12 @@ class BackgroundTracingManagerImpl : public content::BackgroundTracingManager {
void SetupUMACallbacks(SetupUMACallMode mode);
- void OnHistogramChanged(const std::string& histogram_name,
- base::Histogram::Sample reference_value,
- base::Histogram::Sample actual_value);
+ void OnHistogramChangedCallback(const std::string& histogram_name,
+ base::Histogram::Sample reference_value,
+ base::Histogram::Sample actual_value);
+ void SetupFiltersFromConfig(SetupUMACallMode mode);
+ void SetupFilterFromConfig(scoped_refptr<TraceMessageFilter> filter,
+ SetupUMACallMode mode);
scoped_ptr<base::DictionaryValue> GenerateMetadataDict() const;
@@ -85,6 +95,9 @@ class BackgroundTracingManagerImpl : public content::BackgroundTracingManager {
StartedFinalizingCallback callback_;
};
+ typedef std::set<scoped_refptr<TraceMessageFilter>> FilterSet;
+ FilterSet filters_;
oystein (OOO til 10th of July) 2015/07/21 20:52:45 Could we just use the list in TraceControllerImpl,
shatch 2015/07/22 17:44:13 Thought about this a bit more, didn't get any grea
+
scoped_ptr<TracingDelegate> delegate_;
scoped_ptr<content::BackgroundTracingConfig> config_;
std::map<TriggerHandle, std::string> trigger_handles_;

Powered by Google App Engine
This is Rietveld 408576698