OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 #include "content/browser/tracing/tracing_controller_impl.h" | 4 #include "content/browser/tracing/tracing_controller_impl.h" |
5 | 5 |
6 #include "base/bind.h" | 6 #include "base/bind.h" |
7 #include "base/cpu.h" | 7 #include "base/cpu.h" |
8 #include "base/files/file_util.h" | 8 #include "base/files/file_util.h" |
9 #include "base/guid.h" | 9 #include "base/guid.h" |
10 #include "base/json/string_escape.h" | 10 #include "base/json/string_escape.h" |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
101 case base::TimeTicks::Clock::WIN_QPC: | 101 case base::TimeTicks::Clock::WIN_QPC: |
102 return "WIN_QPC"; | 102 return "WIN_QPC"; |
103 case base::TimeTicks::Clock::WIN_ROLLOVER_PROTECTED_TIME_GET_TIME: | 103 case base::TimeTicks::Clock::WIN_ROLLOVER_PROTECTED_TIME_GET_TIME: |
104 return "WIN_ROLLOVER_PROTECTED_TIME_GET_TIME"; | 104 return "WIN_ROLLOVER_PROTECTED_TIME_GET_TIME"; |
105 } | 105 } |
106 | 106 |
107 NOTREACHED(); | 107 NOTREACHED(); |
108 return std::string(); | 108 return std::string(); |
109 } | 109 } |
110 | 110 |
111 scoped_ptr<base::DictionaryValue> GenerateTracingMetadataDict() { | 111 std::unique_ptr<base::DictionaryValue> GenerateTracingMetadataDict() { |
112 scoped_ptr<base::DictionaryValue> metadata_dict(new base::DictionaryValue()); | 112 std::unique_ptr<base::DictionaryValue> metadata_dict( |
| 113 new base::DictionaryValue()); |
113 | 114 |
114 metadata_dict->SetString("network-type", GetNetworkTypeString()); | 115 metadata_dict->SetString("network-type", GetNetworkTypeString()); |
115 metadata_dict->SetString("product-version", GetContentClient()->GetProduct()); | 116 metadata_dict->SetString("product-version", GetContentClient()->GetProduct()); |
116 metadata_dict->SetString("user-agent", GetContentClient()->GetUserAgent()); | 117 metadata_dict->SetString("user-agent", GetContentClient()->GetUserAgent()); |
117 | 118 |
118 // OS | 119 // OS |
119 metadata_dict->SetString("os-name", base::SysInfo::OperatingSystemName()); | 120 metadata_dict->SetString("os-name", base::SysInfo::OperatingSystemName()); |
120 metadata_dict->SetString("os-version", | 121 metadata_dict->SetString("os-version", |
121 base::SysInfo::OperatingSystemVersion()); | 122 base::SysInfo::OperatingSystemVersion()); |
122 metadata_dict->SetString("os-arch", | 123 metadata_dict->SetString("os-arch", |
(...skipping 28 matching lines...) Expand all Loading... |
151 metadata_dict->SetString("gpu-psver", gpu_info.pixel_shader_version); | 152 metadata_dict->SetString("gpu-psver", gpu_info.pixel_shader_version); |
152 metadata_dict->SetString("gpu-vsver", gpu_info.vertex_shader_version); | 153 metadata_dict->SetString("gpu-vsver", gpu_info.vertex_shader_version); |
153 | 154 |
154 #if defined(OS_MACOSX) | 155 #if defined(OS_MACOSX) |
155 metadata_dict->SetString("gpu-glver", gpu_info.gl_version); | 156 metadata_dict->SetString("gpu-glver", gpu_info.gl_version); |
156 #elif defined(OS_POSIX) | 157 #elif defined(OS_POSIX) |
157 metadata_dict->SetString("gpu-gl-vendor", gpu_info.gl_vendor); | 158 metadata_dict->SetString("gpu-gl-vendor", gpu_info.gl_vendor); |
158 metadata_dict->SetString("gpu-gl-renderer", gpu_info.gl_renderer); | 159 metadata_dict->SetString("gpu-gl-renderer", gpu_info.gl_renderer); |
159 #endif | 160 #endif |
160 | 161 |
161 scoped_ptr<TracingDelegate> delegate( | 162 std::unique_ptr<TracingDelegate> delegate( |
162 GetContentClient()->browser()->GetTracingDelegate()); | 163 GetContentClient()->browser()->GetTracingDelegate()); |
163 if (delegate) | 164 if (delegate) |
164 delegate->GenerateMetadataDict(metadata_dict.get()); | 165 delegate->GenerateMetadataDict(metadata_dict.get()); |
165 | 166 |
166 metadata_dict->SetString("clock-domain", GetClockString()); | 167 metadata_dict->SetString("clock-domain", GetClockString()); |
167 metadata_dict->SetBoolean("highres-ticks", | 168 metadata_dict->SetBoolean("highres-ticks", |
168 base::TimeTicks::IsHighResolution()); | 169 base::TimeTicks::IsHighResolution()); |
169 | 170 |
170 return metadata_dict; | 171 return metadata_dict; |
171 } | 172 } |
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
341 FROM_HERE, | 342 FROM_HERE, |
342 base::Bind(base::IgnoreResult(&TracingControllerImpl::StopTracing), | 343 base::Bind(base::IgnoreResult(&TracingControllerImpl::StopTracing), |
343 base::Unretained(this), trace_data_sink), | 344 base::Unretained(this), trace_data_sink), |
344 base::TimeDelta::FromMilliseconds(kStopTracingRetryTimeMilliseconds)); | 345 base::TimeDelta::FromMilliseconds(kStopTracingRetryTimeMilliseconds)); |
345 return true; | 346 return true; |
346 } | 347 } |
347 | 348 |
348 if (trace_data_sink) { | 349 if (trace_data_sink) { |
349 if (TraceLog::GetInstance()->GetCurrentTraceConfig() | 350 if (TraceLog::GetInstance()->GetCurrentTraceConfig() |
350 .IsArgumentFilterEnabled()) { | 351 .IsArgumentFilterEnabled()) { |
351 scoped_ptr<TracingDelegate> delegate( | 352 std::unique_ptr<TracingDelegate> delegate( |
352 GetContentClient()->browser()->GetTracingDelegate()); | 353 GetContentClient()->browser()->GetTracingDelegate()); |
353 if (delegate) { | 354 if (delegate) { |
354 trace_data_sink->SetMetadataFilterPredicate( | 355 trace_data_sink->SetMetadataFilterPredicate( |
355 delegate->GetMetadataFilterPredicate()); | 356 delegate->GetMetadataFilterPredicate()); |
356 } | 357 } |
357 } | 358 } |
358 trace_data_sink->AddMetadata(*GenerateTracingMetadataDict().get()); | 359 trace_data_sink->AddMetadata(*GenerateTracingMetadataDict().get()); |
359 } | 360 } |
360 | 361 |
361 trace_data_sink_ = trace_data_sink; | 362 trace_data_sink_ = trace_data_sink; |
(...skipping 663 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1025 const bool global_success = failed_memory_dump_count_ == 0; | 1026 const bool global_success = failed_memory_dump_count_ == 0; |
1026 if (!pending_memory_dump_callback_.is_null()) { | 1027 if (!pending_memory_dump_callback_.is_null()) { |
1027 pending_memory_dump_callback_.Run(pending_memory_dump_guid_, | 1028 pending_memory_dump_callback_.Run(pending_memory_dump_guid_, |
1028 global_success); | 1029 global_success); |
1029 pending_memory_dump_callback_.Reset(); | 1030 pending_memory_dump_callback_.Reset(); |
1030 } | 1031 } |
1031 pending_memory_dump_guid_ = 0; | 1032 pending_memory_dump_guid_ = 0; |
1032 } | 1033 } |
1033 | 1034 |
1034 } // namespace content | 1035 } // namespace content |
OLD | NEW |