Commit e3e5d6ba authored by Ehsan Chiniforooshan's avatar Ehsan Chiniforooshan Committed by Commit Bot

AddClockSyncMetadataEvent on Android

This was accidentally deleted in crrev.com/c/575716.

Bug: 797809
Change-Id: I360915247c8fc093beed2426b760ec680cd50ccb
Reviewed-on: https://chromium-review.googlesource.com/949977Reviewed-by: default avatarJohn Abd-El-Malek <jam@chromium.org>
Reviewed-by: default avataroysteine <oysteine@chromium.org>
Reviewed-by: default avatarCharlie Andrews <charliea@chromium.org>
Commit-Queue: Ehsan Chiniforooshan <chiniforooshan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#544352}
parent 70b55043
...@@ -146,8 +146,8 @@ void TracingControllerImpl::AddAgents() { ...@@ -146,8 +146,8 @@ void TracingControllerImpl::AddAgents() {
agents_.push_back(std::make_unique<EtwTracingAgent>(connector)); agents_.push_back(std::make_unique<EtwTracingAgent>(connector));
#endif #endif
auto chrome_agent = auto chrome_agent = std::make_unique<tracing::ChromeTraceEventAgent>(
std::make_unique<tracing::ChromeTraceEventAgent>(connector); connector, true /* request_clock_sync_marker_on_android */);
// For adding general CPU, network, OS, and other system information to the // For adding general CPU, network, OS, and other system information to the
// metadata. // metadata.
chrome_agent->AddMetadataGeneratorFunction(base::BindRepeating( chrome_agent->AddMetadataGeneratorFunction(base::BindRepeating(
......
...@@ -603,8 +603,8 @@ void ChildThreadImpl::InitTracing() { ...@@ -603,8 +603,8 @@ void ChildThreadImpl::InitTracing() {
channel_->AddFilter(new tracing::ChildTraceMessageFilter( channel_->AddFilter(new tracing::ChildTraceMessageFilter(
ChildProcess::current()->io_task_runner())); ChildProcess::current()->io_task_runner()));
chrome_trace_event_agent_ = chrome_trace_event_agent_ = std::make_unique<tracing::ChromeTraceEventAgent>(
std::make_unique<tracing::ChromeTraceEventAgent>(GetConnector()); GetConnector(), false /* request_clock_sync_marker_on_android */);
} }
ChildThreadImpl::~ChildThreadImpl() { ChildThreadImpl::~ChildThreadImpl() {
......
...@@ -16,6 +16,7 @@ ...@@ -16,6 +16,7 @@
#include "base/time/time.h" #include "base/time/time.h"
#include "base/trace_event/trace_log.h" #include "base/trace_event/trace_log.h"
#include "base/values.h" #include "base/values.h"
#include "build/build_config.h"
#include "services/service_manager/public/cpp/connector.h" #include "services/service_manager/public/cpp/connector.h"
#include "services/tracing/public/mojom/constants.mojom.h" #include "services/tracing/public/mojom/constants.mojom.h"
...@@ -35,11 +36,16 @@ ChromeTraceEventAgent* ChromeTraceEventAgent::GetInstance() { ...@@ -35,11 +36,16 @@ ChromeTraceEventAgent* ChromeTraceEventAgent::GetInstance() {
} }
ChromeTraceEventAgent::ChromeTraceEventAgent( ChromeTraceEventAgent::ChromeTraceEventAgent(
service_manager::Connector* connector) service_manager::Connector* connector,
bool request_clock_sync_marker_on_android)
: BaseAgent(connector, : BaseAgent(connector,
kChromeTraceEventLabel, kChromeTraceEventLabel,
mojom::TraceDataType::ARRAY, mojom::TraceDataType::ARRAY,
false /* supports_explicit_clock_sync */), #if defined(OS_ANDROID)
request_clock_sync_marker_on_android),
#else
false),
#endif
enabled_tracing_modes_(0) { enabled_tracing_modes_(0) {
DCHECK_CALLED_ON_VALID_THREAD(thread_checker_); DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
DCHECK(!g_chrome_trace_event_agent); DCHECK(!g_chrome_trace_event_agent);
...@@ -93,6 +99,17 @@ void ChromeTraceEventAgent::StopAndFlush(mojom::RecorderPtr recorder) { ...@@ -93,6 +99,17 @@ void ChromeTraceEventAgent::StopAndFlush(mojom::RecorderPtr recorder) {
&ChromeTraceEventAgent::OnTraceLogFlush, base::Unretained(this))); &ChromeTraceEventAgent::OnTraceLogFlush, base::Unretained(this)));
} }
void ChromeTraceEventAgent::RequestClockSyncMarker(
const std::string& sync_id,
const Agent::RequestClockSyncMarkerCallback& callback) {
#if defined(OS_ANDROID)
base::trace_event::TraceLog::GetInstance()->AddClockSyncMetadataEvent();
callback.Run(base::TimeTicks(), base::TimeTicks());
#else
NOTREACHED();
#endif
}
void ChromeTraceEventAgent::RequestBufferStatus( void ChromeTraceEventAgent::RequestBufferStatus(
const RequestBufferStatusCallback& callback) { const RequestBufferStatusCallback& callback) {
base::trace_event::TraceLogStatus status = base::trace_event::TraceLogStatus status =
......
...@@ -34,7 +34,8 @@ class COMPONENT_EXPORT(TRACING_CPP) ChromeTraceEventAgent : public BaseAgent { ...@@ -34,7 +34,8 @@ class COMPONENT_EXPORT(TRACING_CPP) ChromeTraceEventAgent : public BaseAgent {
static ChromeTraceEventAgent* GetInstance(); static ChromeTraceEventAgent* GetInstance();
explicit ChromeTraceEventAgent(service_manager::Connector* connector); explicit ChromeTraceEventAgent(service_manager::Connector* connector,
bool request_clock_sync_marker_on_android);
void AddMetadataGeneratorFunction(MetadataGeneratorFunction generator); void AddMetadataGeneratorFunction(MetadataGeneratorFunction generator);
...@@ -49,6 +50,9 @@ class COMPONENT_EXPORT(TRACING_CPP) ChromeTraceEventAgent : public BaseAgent { ...@@ -49,6 +50,9 @@ class COMPONENT_EXPORT(TRACING_CPP) ChromeTraceEventAgent : public BaseAgent {
base::TimeTicks coordinator_time, base::TimeTicks coordinator_time,
const StartTracingCallback& callback) override; const StartTracingCallback& callback) override;
void StopAndFlush(mojom::RecorderPtr recorder) override; void StopAndFlush(mojom::RecorderPtr recorder) override;
void RequestClockSyncMarker(
const std::string& sync_id,
const Agent::RequestClockSyncMarkerCallback& callback) override;
void RequestBufferStatus( void RequestBufferStatus(
const RequestBufferStatusCallback& callback) override; const RequestBufferStatusCallback& callback) override;
void GetCategories(const GetCategoriesCallback& callback) override; void GetCategories(const GetCategoriesCallback& callback) override;
......
...@@ -83,7 +83,7 @@ class ChromeTraceEventAgentTest : public testing::Test { ...@@ -83,7 +83,7 @@ class ChromeTraceEventAgentTest : public testing::Test {
public: public:
void SetUp() override { void SetUp() override {
message_loop_.reset(new base::MessageLoop()); message_loop_.reset(new base::MessageLoop());
agent_.reset(new ChromeTraceEventAgent(nullptr)); agent_.reset(new ChromeTraceEventAgent(nullptr, false));
} }
void TearDown() override { void TearDown() override {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment