diff options
author | Junio C Hamano <gitster@pobox.com> | 2022-08-29 14:55:13 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2022-08-29 14:55:13 -0700 |
commit | 10ccb50b163d7a204495fe8ba11fe7c54c335163 (patch) | |
tree | fb1db8d5a9ac3a473cd5543c565c5f028cf85d0c /Documentation/technical | |
parent | 25402204fe00004b6acc1a7ca88b990ccd0e5d52 (diff) | |
parent | 35ae40ead34f29c827abf101ba4e5412c2e67ab0 (diff) | |
download | git-10ccb50b163d7a204495fe8ba11fe7c54c335163.tar.gz |
Merge branch 'tl/trace2-config-scope'
Tweak trace2 output about configuration variables.
* tl/trace2-config-scope:
tr2: shows scope unconditionally in addition to key-value pair
api-trace2.txt: print config key-value pair
Diffstat (limited to 'Documentation/technical')
-rw-r--r-- | Documentation/technical/api-trace2.txt | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/Documentation/technical/api-trace2.txt b/Documentation/technical/api-trace2.txt index 77a150b30e..2afa28bb5a 100644 --- a/Documentation/technical/api-trace2.txt +++ b/Documentation/technical/api-trace2.txt @@ -717,6 +717,7 @@ The "exec_id" field is a command-unique id and is only useful if the { "event":"def_param", ... + "scope":"global", "param":"core.abbrev", "value":"7" } @@ -1207,6 +1208,45 @@ at offset 508. This example also shows that thread names are assigned in a racy manner as each thread starts and allocates TLS storage. +Config (def param) Events:: + + Dump "interesting" config values to trace2 log. ++ +We can optionally emit configuration events, see +`trace2.configparams` in linkgit:git-config[1] for how to enable +it. ++ +---------------- +$ git config --system color.ui never +$ git config --global color.ui always +$ git config --local color.ui auto +$ git config --list --show-scope | grep 'color.ui' +system color.ui=never +global color.ui=always +local color.ui=auto +---------------- ++ +Then, mark the config `color.ui` as "interesting" config with +`GIT_TRACE2_CONFIG_PARAMS`: ++ +---------------- +$ export GIT_TRACE2_PERF_BRIEF=1 +$ export GIT_TRACE2_PERF=~/log.perf +$ export GIT_TRACE2_CONFIG_PARAMS=color.ui +$ git version +... +$ cat ~/log.perf +d0 | main | version | | | | | ... +d0 | main | start | | 0.001642 | | | /usr/local/bin/git version +d0 | main | cmd_name | | | | | version (version) +d0 | main | def_param | | | | scope:system | color.ui:never +d0 | main | def_param | | | | scope:global | color.ui:always +d0 | main | def_param | | | | scope:local | color.ui:auto +d0 | main | data | r0 | 0.002100 | 0.002100 | fsync | fsync/writeout-only:0 +d0 | main | data | r0 | 0.002126 | 0.002126 | fsync | fsync/hardware-flush:0 +d0 | main | exit | | 0.000470 | | | code:0 +d0 | main | atexit | | 0.000477 | | | code:0 +---------------- == Future Work === Relationship to the Existing Trace Api (api-trace.txt) |