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" |
11 #include "base/macros.h" | 11 #include "base/macros.h" |
12 #include "base/memory/ref_counted_memory.h" | 12 #include "base/memory/ref_counted_memory.h" |
13 #include "base/strings/string_number_conversions.h" | 13 #include "base/strings/string_number_conversions.h" |
14 #include "base/sys_info.h" | 14 #include "base/sys_info.h" |
15 #include "base/threading/thread_task_runner_handle.h" | 15 #include "base/threading/thread_task_runner_handle.h" |
16 #include "base/time/time.h" | 16 #include "base/time/time.h" |
17 #include "base/trace_event/trace_event.h" | 17 #include "base/trace_event/trace_event.h" |
18 #include "build/build_config.h" | 18 #include "build/build_config.h" |
19 #include "components/tracing/common/process_metrics_memory_dump_provider.h" | 19 #include "components/tracing/common/process_metrics_memory_dump_provider.h" |
20 #include "components/version_info/version_info.h" | |
20 #include "content/browser/tracing/file_tracing_provider_impl.h" | 21 #include "content/browser/tracing/file_tracing_provider_impl.h" |
21 #include "content/browser/tracing/trace_message_filter.h" | 22 #include "content/browser/tracing/trace_message_filter.h" |
22 #include "content/browser/tracing/tracing_ui.h" | 23 #include "content/browser/tracing/tracing_ui.h" |
23 #include "content/common/child_process_messages.h" | 24 #include "content/common/child_process_messages.h" |
24 #include "content/public/browser/browser_message_filter.h" | 25 #include "content/public/browser/browser_message_filter.h" |
25 #include "content/public/browser/content_browser_client.h" | 26 #include "content/public/browser/content_browser_client.h" |
26 #include "content/public/browser/gpu_data_manager.h" | 27 #include "content/public/browser/gpu_data_manager.h" |
27 #include "content/public/browser/tracing_delegate.h" | 28 #include "content/public/browser/tracing_delegate.h" |
28 #include "content/public/common/child_process_host.h" | 29 #include "content/public/common/child_process_host.h" |
29 #include "content/public/common/content_client.h" | 30 #include "content/public/common/content_client.h" |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
107 NOTREACHED(); | 108 NOTREACHED(); |
108 return std::string(); | 109 return std::string(); |
109 } | 110 } |
110 | 111 |
111 std::unique_ptr<base::DictionaryValue> GenerateTracingMetadataDict() { | 112 std::unique_ptr<base::DictionaryValue> GenerateTracingMetadataDict() { |
112 std::unique_ptr<base::DictionaryValue> metadata_dict( | 113 std::unique_ptr<base::DictionaryValue> metadata_dict( |
113 new base::DictionaryValue()); | 114 new base::DictionaryValue()); |
114 | 115 |
115 metadata_dict->SetString("network-type", GetNetworkTypeString()); | 116 metadata_dict->SetString("network-type", GetNetworkTypeString()); |
116 metadata_dict->SetString("product-version", GetContentClient()->GetProduct()); | 117 metadata_dict->SetString("product-version", GetContentClient()->GetProduct()); |
118 metadata_dict->SetString("v8-version", GetContentClient()->GetV8Version()); | |
119 metadata_dict->SetString("revision", version_info::GetLastChange()); | |
clamy
2016/06/24 11:32:12
How does this work with non-Chrome embedders?
Primiano Tucci (use gerrit)
2016/06/24 12:39:43
version_info is not a chrome thingy. It's a compon
| |
117 metadata_dict->SetString("user-agent", GetContentClient()->GetUserAgent()); | 120 metadata_dict->SetString("user-agent", GetContentClient()->GetUserAgent()); |
118 | 121 |
119 // OS | 122 // OS |
120 metadata_dict->SetString("os-name", base::SysInfo::OperatingSystemName()); | 123 metadata_dict->SetString("os-name", base::SysInfo::OperatingSystemName()); |
121 metadata_dict->SetString("os-version", | 124 metadata_dict->SetString("os-version", |
122 base::SysInfo::OperatingSystemVersion()); | 125 base::SysInfo::OperatingSystemVersion()); |
123 metadata_dict->SetString("os-arch", | 126 metadata_dict->SetString("os-arch", |
124 base::SysInfo::OperatingSystemArchitecture()); | 127 base::SysInfo::OperatingSystemArchitecture()); |
125 | 128 |
126 // CPU | 129 // CPU |
(...skipping 902 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1029 const bool global_success = failed_memory_dump_count_ == 0; | 1032 const bool global_success = failed_memory_dump_count_ == 0; |
1030 if (!pending_memory_dump_callback_.is_null()) { | 1033 if (!pending_memory_dump_callback_.is_null()) { |
1031 pending_memory_dump_callback_.Run(pending_memory_dump_guid_, | 1034 pending_memory_dump_callback_.Run(pending_memory_dump_guid_, |
1032 global_success); | 1035 global_success); |
1033 pending_memory_dump_callback_.Reset(); | 1036 pending_memory_dump_callback_.Reset(); |
1034 } | 1037 } |
1035 pending_memory_dump_guid_ = 0; | 1038 pending_memory_dump_guid_ = 0; |
1036 } | 1039 } |
1037 | 1040 |
1038 } // namespace content | 1041 } // namespace content |
OLD | NEW |