Index: tools/android/loading/trace_recorder.py |
diff --git a/tools/android/loading/trace_recorder.py b/tools/android/loading/trace_recorder.py |
index fdf6cc6c93ac39bcb3dbfc9e651da7c5d97c1835..846224af8d898a292769364950377785e80d1b52 100755 |
--- a/tools/android/loading/trace_recorder.py |
+++ b/tools/android/loading/trace_recorder.py |
@@ -30,20 +30,32 @@ import request_track |
import tracing |
+def MonitorUrl(connection, url): |
+ """Monitor a URL via a trace recorder. |
+ |
+ Args: |
+ connection: A device_monitor.DevToolsConnection instance. |
+ url: url to navigate to as string. |
+ |
+ Returns: |
+ loading_trace.LoadingTrace. |
+ """ |
+ page = page_track.PageTrack(connection) |
+ request = request_track.RequestTrack(connection) |
+ tracing_track = tracing.TracingTrack(connection) |
blundell
2016/01/21 14:11:38
nit: either call this |trace| (which you can do no
mattcary
2016/01/21 16:11:35
Done.
|
+ connection.SetUpMonitoring() |
+ connection.SendAndIgnoreResponse('Network.clearBrowserCache', {}) |
Benoit L
2016/01/21 14:14:38
Use the ClearCache() function introduced in devtoo
mattcary
2016/01/21 16:11:35
Done.
|
+ connection.SendAndIgnoreResponse('Page.navigate', {'url': url}) |
+ connection.StartMonitoring() |
+ metadata = {'date': datetime.datetime.utcnow().isoformat(), |
+ 'seconds_since_epoch': time.time()} |
+ return loading_trace.LoadingTrace(url, metadata, page, request, |
+ tracing_track) |
+ |
def RecordAndDumpTrace(device, url, output_filename): |
with file(output_filename, 'w') as output,\ |
device_setup.DeviceConnection(device) as connection: |
- page = page_track.PageTrack(connection) |
- request = request_track.RequestTrack(connection) |
- tracing_track = tracing.TracingTrack(connection) |
- connection.SetUpMonitoring() |
- connection.SendAndIgnoreResponse('Network.clearBrowserCache', {}) |
- connection.SendAndIgnoreResponse('Page.navigate', {'url': url}) |
- connection.StartMonitoring() |
- metadata = {'date': datetime.datetime.utcnow().isoformat(), |
- 'seconds_since_epoch': time.time()} |
- trace = loading_trace.LoadingTrace(url, metadata, page, request, |
- tracing_track) |
+ trace = MonitorUrl(connection, url) |
json.dump(trace.ToJsonDict(), output) |