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 

 > 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 

 > 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

 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


To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to
More majordomo info at

Reply via email to