OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef BASE_TRACE_EVENT_TRACE_CONFIG_MEMORY_TEST_UTIL_H_ | 5 #ifndef BASE_TRACE_EVENT_TRACE_CONFIG_MEMORY_TEST_UTIL_H_ |
6 #define BASE_TRACE_EVENT_TRACE_CONFIG_MEMORY_TEST_UTIL_H_ | 6 #define BASE_TRACE_EVENT_TRACE_CONFIG_MEMORY_TEST_UTIL_H_ |
7 | 7 |
8 #include "base/strings/stringprintf.h" | 8 #include "base/strings/stringprintf.h" |
9 #include "base/trace_event/memory_dump_manager.h" | 9 #include "base/trace_event/memory_dump_manager.h" |
10 | 10 |
11 namespace base { | 11 namespace base { |
12 namespace trace_event { | 12 namespace trace_event { |
13 | 13 |
14 class TraceConfigMemoryTestUtil { | 14 class TraceConfigMemoryTestUtil { |
15 public: | 15 public: |
16 static std::string GetTraceConfig_PeriodicTriggers(int light_period, | 16 static std::string GetTraceConfig_LegacyPeriodicTriggers(int light_period, |
17 int heavy_period) { | 17 int heavy_period) { |
18 return StringPrintf( | 18 return StringPrintf( |
19 "{" | 19 "{" |
20 "\"enable_argument_filter\":false," | 20 "\"enable_argument_filter\":false," |
21 "\"enable_systrace\":false," | 21 "\"enable_systrace\":false," |
22 "\"included_categories\":[" | 22 "\"included_categories\":[" |
23 "\"%s\"" | 23 "\"%s\"" |
24 "]," | 24 "]," |
25 "\"memory_dump_config\":{" | 25 "\"memory_dump_config\":{" |
26 "\"allowed_dump_modes\":[\"background\",\"light\",\"detailed\"]," | 26 "\"allowed_dump_modes\":[\"background\",\"light\",\"detailed\"]," |
27 "\"heap_profiler_options\":{" | 27 "\"heap_profiler_options\":{" |
28 "\"breakdown_threshold_bytes\":2048" | 28 "\"breakdown_threshold_bytes\":2048" |
29 "}," | 29 "}," |
30 "\"triggers\":[" | 30 "\"triggers\":[" |
31 "{" | 31 "{" |
32 "\"mode\":\"light\"," | 32 "\"mode\":\"light\"," |
33 "\"periodic_interval_ms\":%d" | 33 "\"periodic_interval_ms\":%d" |
34 "}," | 34 "}," |
35 "{" | 35 "{" |
36 "\"mode\":\"detailed\"," | 36 "\"mode\":\"detailed\"," |
37 "\"periodic_interval_ms\":%d" | 37 "\"periodic_interval_ms\":%d" |
38 "}" | 38 "}" |
39 "]" | 39 "]" |
40 "}," | 40 "}," |
41 "\"record_mode\":\"record-until-full\"" | 41 "\"record_mode\":\"record-until-full\"" |
42 "}", MemoryDumpManager::kTraceCategory, light_period, heavy_period); | 42 "}", MemoryDumpManager::kTraceCategory, light_period, heavy_period); |
43 } | 43 } |
44 | 44 |
| 45 static std::string GetTraceConfig_PeriodicTriggers(int light_period, |
| 46 int heavy_period) { |
| 47 return StringPrintf( |
| 48 "{" |
| 49 "\"enable_argument_filter\":false," |
| 50 "\"enable_systrace\":false," |
| 51 "\"included_categories\":[" |
| 52 "\"%s\"" |
| 53 "]," |
| 54 "\"memory_dump_config\":{" |
| 55 "\"allowed_dump_modes\":[\"background\",\"light\",\"detailed\"]," |
| 56 "\"heap_profiler_options\":{" |
| 57 "\"breakdown_threshold_bytes\":2048" |
| 58 "}," |
| 59 "\"triggers\":[" |
| 60 "{" |
| 61 "\"min_time_between_dumps_ms\":%d," |
| 62 "\"mode\":\"light\"," |
| 63 "\"type\":\"periodic_interval\"" |
| 64 "}," |
| 65 "{" |
| 66 "\"min_time_between_dumps_ms\":%d," |
| 67 "\"mode\":\"detailed\"," |
| 68 "\"type\":\"periodic_interval\"" |
| 69 "}" |
| 70 "]" |
| 71 "}," |
| 72 "\"record_mode\":\"record-until-full\"" |
| 73 "}", MemoryDumpManager::kTraceCategory, light_period, heavy_period); |
| 74 } |
| 75 |
45 static std::string GetTraceConfig_EmptyTriggers() { | 76 static std::string GetTraceConfig_EmptyTriggers() { |
46 return StringPrintf( | 77 return StringPrintf( |
47 "{" | 78 "{" |
48 "\"enable_argument_filter\":false," | 79 "\"enable_argument_filter\":false," |
49 "\"enable_systrace\":false," | 80 "\"enable_systrace\":false," |
50 "\"included_categories\":[" | 81 "\"included_categories\":[" |
51 "\"%s\"" | 82 "\"%s\"" |
52 "]," | 83 "]," |
53 "\"memory_dump_config\":{" | 84 "\"memory_dump_config\":{" |
54 "\"allowed_dump_modes\":[\"background\",\"light\",\"detailed\"]," | 85 "\"allowed_dump_modes\":[\"background\",\"light\",\"detailed\"]," |
(...skipping 21 matching lines...) Expand all Loading... |
76 "{" | 107 "{" |
77 "\"enable_argument_filter\":false," | 108 "\"enable_argument_filter\":false," |
78 "\"enable_systrace\":false," | 109 "\"enable_systrace\":false," |
79 "\"included_categories\":[" | 110 "\"included_categories\":[" |
80 "\"%s\"" | 111 "\"%s\"" |
81 "]," | 112 "]," |
82 "\"memory_dump_config\":{" | 113 "\"memory_dump_config\":{" |
83 "\"allowed_dump_modes\":[\"background\"]," | 114 "\"allowed_dump_modes\":[\"background\"]," |
84 "\"triggers\":[" | 115 "\"triggers\":[" |
85 "{" | 116 "{" |
| 117 "\"min_time_between_dumps_ms\":%d," |
86 "\"mode\":\"background\"," | 118 "\"mode\":\"background\"," |
87 "\"periodic_interval_ms\":%d" | 119 "\"type\":\"periodic_interval\"" |
88 "}" | 120 "}" |
89 "]" | 121 "]" |
90 "}," | 122 "}," |
91 "\"record_mode\":\"record-until-full\"" | 123 "\"record_mode\":\"record-until-full\"" |
92 "}", MemoryDumpManager::kTraceCategory, period_ms); | 124 "}", MemoryDumpManager::kTraceCategory, period_ms); |
93 } | 125 } |
| 126 |
| 127 static std::string GetTraceConfig_PeakDetectionTrigger(int heavy_period) { |
| 128 return StringPrintf( |
| 129 "{" |
| 130 "\"enable_argument_filter\":false," |
| 131 "\"enable_systrace\":false," |
| 132 "\"included_categories\":[" |
| 133 "\"%s\"" |
| 134 "]," |
| 135 "\"memory_dump_config\":{" |
| 136 "\"allowed_dump_modes\":[\"background\",\"light\",\"detailed\"]," |
| 137 "\"triggers\":[" |
| 138 "{" |
| 139 "\"min_time_between_dumps_ms\":%d," |
| 140 "\"mode\":\"detailed\"," |
| 141 "\"type\":\"peak_memory_usage\"" |
| 142 "}" |
| 143 "]" |
| 144 "}," |
| 145 "\"record_mode\":\"record-until-full\"" |
| 146 "}", MemoryDumpManager::kTraceCategory, heavy_period); |
| 147 } |
94 }; | 148 }; |
95 | 149 |
96 } // namespace trace_event | 150 } // namespace trace_event |
97 } // namespace base | 151 } // namespace base |
98 | 152 |
99 #endif // BASE_TRACE_EVENT_TRACE_CONFIG_MEMORY_TEST_UTIL_H_ | 153 #endif // BASE_TRACE_EVENT_TRACE_CONFIG_MEMORY_TEST_UTIL_H_ |
OLD | NEW |