Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(446)

Side by Side Diff: net/http/http_network_transaction.cc

Issue 3086: * Change output of trace_event log to JSON to enable easier integration with ... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 12 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 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 4
5 #include "net/http/http_network_transaction.h" 5 #include "net/http/http_network_transaction.h"
6 6
7 #include "base/string_util.h" 7 #include "base/string_util.h"
8 #include "base/trace_event.h"
8 #include "net/base/client_socket_factory.h" 9 #include "net/base/client_socket_factory.h"
9 #include "net/base/host_resolver.h" 10 #include "net/base/host_resolver.h"
10 #include "net/base/load_flags.h" 11 #include "net/base/load_flags.h"
11 #include "net/base/ssl_client_socket.h" 12 #include "net/base/ssl_client_socket.h"
12 #include "net/base/upload_data_stream.h" 13 #include "net/base/upload_data_stream.h"
13 #include "net/http/http_chunked_decoder.h" 14 #include "net/http/http_chunked_decoder.h"
14 #include "net/http/http_network_session.h" 15 #include "net/http/http_network_session.h"
15 #include "net/http/http_request_info.h" 16 #include "net/http/http_request_info.h"
16 #include "net/http/http_util.h" 17 #include "net/http/http_util.h"
17 18
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after
241 int HttpNetworkTransaction::DoLoop(int result) { 242 int HttpNetworkTransaction::DoLoop(int result) {
242 DCHECK(next_state_ != STATE_NONE); 243 DCHECK(next_state_ != STATE_NONE);
243 244
244 int rv = result; 245 int rv = result;
245 do { 246 do {
246 State state = next_state_; 247 State state = next_state_;
247 next_state_ = STATE_NONE; 248 next_state_ = STATE_NONE;
248 switch (state) { 249 switch (state) {
249 case STATE_RESOLVE_PROXY: 250 case STATE_RESOLVE_PROXY:
250 DCHECK(rv == OK); 251 DCHECK(rv == OK);
252 TRACE_EVENT_BEGIN("http.resolve_proxy", request_, request_->url.spec());
251 rv = DoResolveProxy(); 253 rv = DoResolveProxy();
252 break; 254 break;
253 case STATE_RESOLVE_PROXY_COMPLETE: 255 case STATE_RESOLVE_PROXY_COMPLETE:
254 rv = DoResolveProxyComplete(rv); 256 rv = DoResolveProxyComplete(rv);
257 TRACE_EVENT_END("http.resolve_proxy", request_, request_->url.spec());
255 break; 258 break;
256 case STATE_INIT_CONNECTION: 259 case STATE_INIT_CONNECTION:
257 DCHECK(rv == OK); 260 DCHECK(rv == OK);
261 TRACE_EVENT_BEGIN("http.init_conn", request_, request_->url.spec());
258 rv = DoInitConnection(); 262 rv = DoInitConnection();
259 break; 263 break;
260 case STATE_INIT_CONNECTION_COMPLETE: 264 case STATE_INIT_CONNECTION_COMPLETE:
261 rv = DoInitConnectionComplete(rv); 265 rv = DoInitConnectionComplete(rv);
266 TRACE_EVENT_END("http.init_conn", request_, request_->url.spec());
262 break; 267 break;
263 case STATE_RESOLVE_HOST: 268 case STATE_RESOLVE_HOST:
264 DCHECK(rv == OK); 269 DCHECK(rv == OK);
270 TRACE_EVENT_BEGIN("http.resolve_host", request_, request_->url.spec());
265 rv = DoResolveHost(); 271 rv = DoResolveHost();
266 break; 272 break;
267 case STATE_RESOLVE_HOST_COMPLETE: 273 case STATE_RESOLVE_HOST_COMPLETE:
268 rv = DoResolveHostComplete(rv); 274 rv = DoResolveHostComplete(rv);
275 TRACE_EVENT_END("http.resolve_host", request_, request_->url.spec());
269 break; 276 break;
270 case STATE_CONNECT: 277 case STATE_CONNECT:
271 DCHECK(rv == OK); 278 DCHECK(rv == OK);
279 TRACE_EVENT_BEGIN("http.connect", request_, request_->url.spec());
272 rv = DoConnect(); 280 rv = DoConnect();
273 break; 281 break;
274 case STATE_CONNECT_COMPLETE: 282 case STATE_CONNECT_COMPLETE:
275 rv = DoConnectComplete(rv); 283 rv = DoConnectComplete(rv);
284 TRACE_EVENT_END("http.connect", request_, request_->url.spec());
276 break; 285 break;
277 case STATE_SSL_CONNECT_OVER_TUNNEL: 286 case STATE_SSL_CONNECT_OVER_TUNNEL:
278 DCHECK(rv == OK); 287 DCHECK(rv == OK);
288 TRACE_EVENT_BEGIN("http.ssl_tunnel", request_, request_->url.spec());
279 rv = DoSSLConnectOverTunnel(); 289 rv = DoSSLConnectOverTunnel();
280 break; 290 break;
281 case STATE_SSL_CONNECT_OVER_TUNNEL_COMPLETE: 291 case STATE_SSL_CONNECT_OVER_TUNNEL_COMPLETE:
282 rv = DoSSLConnectOverTunnelComplete(rv); 292 rv = DoSSLConnectOverTunnelComplete(rv);
293 TRACE_EVENT_END("http.ssl_tunnel", request_, request_->url.spec());
283 break; 294 break;
284 case STATE_WRITE_HEADERS: 295 case STATE_WRITE_HEADERS:
285 DCHECK(rv == OK); 296 DCHECK(rv == OK);
297 TRACE_EVENT_BEGIN("http.write_headers", request_, request_->url.spec());
286 rv = DoWriteHeaders(); 298 rv = DoWriteHeaders();
287 break; 299 break;
288 case STATE_WRITE_HEADERS_COMPLETE: 300 case STATE_WRITE_HEADERS_COMPLETE:
289 rv = DoWriteHeadersComplete(rv); 301 rv = DoWriteHeadersComplete(rv);
302 TRACE_EVENT_END("http.write_headers", request_, request_->url.spec());
290 break; 303 break;
291 case STATE_WRITE_BODY: 304 case STATE_WRITE_BODY:
292 DCHECK(rv == OK); 305 DCHECK(rv == OK);
306 TRACE_EVENT_BEGIN("http.write_body", request_, request_->url.spec());
293 rv = DoWriteBody(); 307 rv = DoWriteBody();
294 break; 308 break;
295 case STATE_WRITE_BODY_COMPLETE: 309 case STATE_WRITE_BODY_COMPLETE:
296 rv = DoWriteBodyComplete(rv); 310 rv = DoWriteBodyComplete(rv);
311 TRACE_EVENT_END("http.write_body", request_, request_->url.spec());
297 break; 312 break;
298 case STATE_READ_HEADERS: 313 case STATE_READ_HEADERS:
299 DCHECK(rv == OK); 314 DCHECK(rv == OK);
315 TRACE_EVENT_BEGIN("http.read_headers", request_, request_->url.spec());
300 rv = DoReadHeaders(); 316 rv = DoReadHeaders();
301 break; 317 break;
302 case STATE_READ_HEADERS_COMPLETE: 318 case STATE_READ_HEADERS_COMPLETE:
303 rv = DoReadHeadersComplete(rv); 319 rv = DoReadHeadersComplete(rv);
320 TRACE_EVENT_END("http.read_headers", request_, request_->url.spec());
304 break; 321 break;
305 case STATE_READ_BODY: 322 case STATE_READ_BODY:
306 DCHECK(rv == OK); 323 DCHECK(rv == OK);
324 TRACE_EVENT_BEGIN("http.read_body", request_, request_->url.spec());
307 rv = DoReadBody(); 325 rv = DoReadBody();
308 break; 326 break;
309 case STATE_READ_BODY_COMPLETE: 327 case STATE_READ_BODY_COMPLETE:
310 rv = DoReadBodyComplete(rv); 328 rv = DoReadBodyComplete(rv);
329 TRACE_EVENT_END("http.read_body", request_, request_->url.spec());
311 break; 330 break;
312 default: 331 default:
313 NOTREACHED() << "bad state"; 332 NOTREACHED() << "bad state";
314 rv = ERR_FAILED; 333 rv = ERR_FAILED;
315 break; 334 break;
316 } 335 }
317 } while (rv != ERR_IO_PENDING && next_state_ != STATE_NONE); 336 } while (rv != ERR_IO_PENDING && next_state_ != STATE_NONE);
318 337
319 return rv; 338 return rv;
320 } 339 }
(...skipping 465 matching lines...) Expand 10 before | Expand all | Expand 10 after
786 next_state_ = STATE_INIT_CONNECTION; // Resend the request. 805 next_state_ = STATE_INIT_CONNECTION; // Resend the request.
787 error = OK; 806 error = OK;
788 } 807 }
789 break; 808 break;
790 } 809 }
791 return error; 810 return error;
792 } 811 }
793 812
794 } // namespace net 813 } // namespace net
795 814
OLDNEW
« no previous file with comments | « net/base/tcp_client_socket.cc ('k') | tools/trace/trace.html » ('j') | tools/trace/trace_data.js » ('J')

Powered by Google App Engine
This is Rietveld 408576698