Here's v5 of the performance tracing patch series, now including a bunch of
cleanups and adding timestamp, file and line to all trace output.
I'm particularly interested in feedback for the output format. As file names
have different lengths, printing file:line as prefix results in unaligned
output:
> GIT_TRACE=1 git stash list
00:12:10.544266 git.c:512 trace: exec: 'git-stash' 'list'
00:12:10.544266 run-command.c:337 trace: run_command: 'git-stash' 'list'
00:12:10.649779 git.c:312 trace: built-in: git 'rev-parse' '--git-dir'
We could add separators to make it easier to parse, e.g.:
> GIT_TRACE=1 git stash list
[00:12:10.544266 git.c:512] trace: exec: 'git-stash' 'list'
[00:12:10.544266 run-command.c:337] trace: run_command: 'git-stash' 'list'
[00:12:10.649779 git.c:312] trace: built-in: git 'rev-parse' '--git-dir'
Or print file:line at the end (but what about multi-line messages, such as
packet-trace?):
> GIT_TRACE=1 git stash list
00:12:10.544266 trace: exec: 'git-stash' 'list' (git.c:512)
00:12:10.544266 trace: run_command: 'git-stash' 'list' (run-command.c:337)
00:12:10.649779 trace: built-in: git 'rev-parse' '--git-dir' (git.c:312)
Karsten Blees (11):
trace: move trace declarations from cache.h to new trace.h
trace: consistently name the format parameter
trace: remove redundant printf format attribute
trace: factor out printing to the trace file
trace: add infrastructure to augment trace output with additional info
trace: add current timestamp to all trace output
trace: move code around, in preparation to file:line output
trace: add 'file:line' to all trace output
trace: add high resolution timer function to debug performance issues
trace: add trace_performance facility to debug performance issues
git: add performance tracing for git's main() function to debug
scripts
Makefile | 7 ++
cache.h | 13 +--
config.mak.uname | 1 +
git-compat-util.h | 4 +
git.c | 2 +
trace.c | 304 +++++++++++++++++++++++++++++++++++++++++++++++-------
trace.h | 96 +++++++++++++++++
7 files changed, 379 insertions(+), 48 deletions(-)
create mode 100644 trace.h
--
1.9.2.msysgit.0.501.gaeecf09
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html