Index: src/profiler/profile-generator.cc |
diff --git a/src/profiler/profile-generator.cc b/src/profiler/profile-generator.cc |
index a670729b794961da40ef3668a326cb11cf851f90..69a10282becbc21b057fe8f29da516a555e81905 100644 |
--- a/src/profiler/profile-generator.cc |
+++ b/src/profiler/profile-generator.cc |
@@ -412,7 +412,7 @@ CpuProfile::CpuProfile(CpuProfiler* profiler, const char* title, |
value->SetDouble("startTime", |
(start_time_ - base::TimeTicks()).InMicroseconds()); |
TRACE_EVENT_SAMPLE_WITH_ID1(TRACE_DISABLED_BY_DEFAULT("v8.cpu_profiler"), |
- "CpuProfile", this, "data", std::move(value)); |
+ "Profile", this, "data", std::move(value)); |
} |
void CpuProfile::AddPath(base::TimeTicks timestamp, |
@@ -466,22 +466,27 @@ void CpuProfile::StreamPendingTraceEvents() { |
if (pending_nodes.empty() && !samples_.length()) return; |
auto value = TracedValue::Create(); |
- if (!pending_nodes.empty()) { |
- value->BeginArray("nodes"); |
- for (auto node : pending_nodes) { |
- value->BeginDictionary(); |
- BuildNodeValue(node, value.get()); |
- value->EndDictionary(); |
+ if (!pending_nodes.empty() || streaming_next_sample_ != samples_.length()) { |
+ value->BeginDictionary("cpuProfile"); |
+ if (!pending_nodes.empty()) { |
+ value->BeginArray("nodes"); |
+ for (auto node : pending_nodes) { |
+ value->BeginDictionary(); |
+ BuildNodeValue(node, value.get()); |
+ value->EndDictionary(); |
+ } |
+ value->EndArray(); |
} |
- value->EndArray(); |
+ if (streaming_next_sample_ != samples_.length()) { |
+ value->BeginArray("samples"); |
+ for (int i = streaming_next_sample_; i < samples_.length(); ++i) { |
+ value->AppendInteger(samples_[i]->id()); |
+ } |
+ value->EndArray(); |
+ } |
+ value->EndDictionary(); |
} |
- |
if (streaming_next_sample_ != samples_.length()) { |
- value->BeginArray("samples"); |
- for (int i = streaming_next_sample_; i < samples_.length(); ++i) { |
- value->AppendInteger(samples_[i]->id()); |
- } |
- value->EndArray(); |
value->BeginArray("timeDeltas"); |
base::TimeTicks lastTimestamp = |
streaming_next_sample_ ? timestamps_[streaming_next_sample_ - 1] |
@@ -497,8 +502,7 @@ void CpuProfile::StreamPendingTraceEvents() { |
} |
TRACE_EVENT_SAMPLE_WITH_ID1(TRACE_DISABLED_BY_DEFAULT("v8.cpu_profiler"), |
- "CpuProfileChunk", this, "data", |
- std::move(value)); |
+ "ProfileChunk", this, "data", std::move(value)); |
} |
void CpuProfile::FinishProfile() { |
@@ -507,8 +511,7 @@ void CpuProfile::FinishProfile() { |
auto value = TracedValue::Create(); |
value->SetDouble("endTime", (end_time_ - base::TimeTicks()).InMicroseconds()); |
TRACE_EVENT_SAMPLE_WITH_ID1(TRACE_DISABLED_BY_DEFAULT("v8.cpu_profiler"), |
- "CpuProfileChunk", this, "data", |
- std::move(value)); |
+ "ProfileChunk", this, "data", std::move(value)); |
} |
void CpuProfile::Print() { |