Record JavaScript calls in DevTools timeline on Node/ipc callback

This commit is contained in:
Ryohei Ikegami 2016-12-07 20:22:08 +09:00
parent f1f73eff04
commit a7a06a483e
2 changed files with 16 additions and 0 deletions

View file

@ -17,6 +17,8 @@
#include "base/files/file_path.h"
#include "base/message_loop/message_loop.h"
#include "base/path_service.h"
#include "base/trace_event/trace_event.h"
#include "base/trace_event/trace_event_argument.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/common/content_paths.h"
#include "native_mate/dictionary.h"
@ -239,8 +241,17 @@ void NodeBindings::UvRunOnce() {
v8::MicrotasksScope script_scope(env->isolate(),
v8::MicrotasksScope::kRunMicrotasks);
if (!is_browser_)
TRACE_EVENT_BEGIN1("devtools.timeline", "FunctionCall", "data",
std::unique_ptr<base::trace_event::TracedValue>(
new base::trace_event::TracedValue()));
// Deal with uv events.
int r = uv_run(uv_loop_, UV_RUN_NOWAIT);
if (!is_browser_)
TRACE_EVENT_END0("devtools.timeline", "FunctionCall");
if (r == 0)
message_loop_->QuitWhenIdle(); // Quit from uv.