Add in some infrastructure to make tracing of logical requests broken over async callbacks easier.
Create a concept of a TraceContext that holds a current Tracer which can be used to create a timeseries sequence of events. This implementation extends the functionality of RunnableMethod and NewRunnableMethod() to create a parallel TracedMethod, and NewTracedMethod(). These new Traced methods methods and types know how to propogate the current TraceContext to create a logical sequence of annotations through the servicing of one logical action. Currently, the code is controlled via define macro which changes NewTracedMethod back into NewRunnableMethod if the hook is disabled. BUG=52883 TEST=compiles, and client can connect to host. Review URL: http://codereview.chromium.org/3169047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57992 0039d316-1c4b-4281-b951-d872f2087c98
Showing
- remoting/base/protocol/chromotocol.gyp 63 additions, 0 deletionsremoting/base/protocol/chromotocol.gyp
- remoting/base/protocol/trace.proto 37 additions, 0 deletionsremoting/base/protocol/trace.proto
- remoting/base/tracer.cc 144 additions, 0 deletionsremoting/base/tracer.cc
- remoting/base/tracer.h 265 additions, 0 deletionsremoting/base/tracer.h
- remoting/remoting.gyp 3 additions, 0 deletionsremoting/remoting.gyp
Loading
Please register or sign in to comment