зеркало из https://github.com/microsoft/git.git
Merge branch 'sg/trace2-rename'
Rename environment variables that are used to control the "trace2" mechanism to a more readable name. * sg/trace2-rename: trace2: document the supported values of GIT_TRACE2* env variables trace2: rename environment variables to GIT_TRACE2*
This commit is contained in:
Коммит
463dca6476
|
@ -4,17 +4,17 @@ command line arguments are not respected.
|
|||
|
||||
trace2.normalTarget::
|
||||
This variable controls the normal target destination.
|
||||
It may be overridden by the `GIT_TR2` environment variable.
|
||||
It may be overridden by the `GIT_TRACE2` environment variable.
|
||||
The following table shows possible values.
|
||||
|
||||
trace2.perfTarget::
|
||||
This variable controls the performance target destination.
|
||||
It may be overridden by the `GIT_TR2_PERF` environment variable.
|
||||
It may be overridden by the `GIT_TRACE2_PERF` environment variable.
|
||||
The following table shows possible values.
|
||||
|
||||
trace2.eventTarget::
|
||||
This variable controls the event target destination.
|
||||
It may be overridden by the `GIT_TR2_EVENT` environment variable.
|
||||
It may be overridden by the `GIT_TRACE2_EVENT` environment variable.
|
||||
The following table shows possible values.
|
||||
+
|
||||
include::../trace2-target-values.txt[]
|
||||
|
@ -22,22 +22,22 @@ include::../trace2-target-values.txt[]
|
|||
trace2.normalBrief::
|
||||
Boolean. When true `time`, `filename`, and `line` fields are
|
||||
omitted from normal output. May be overridden by the
|
||||
`GIT_TR2_BRIEF` environment variable. Defaults to false.
|
||||
`GIT_TRACE2_BRIEF` environment variable. Defaults to false.
|
||||
|
||||
trace2.perfBrief::
|
||||
Boolean. When true `time`, `filename`, and `line` fields are
|
||||
omitted from PERF output. May be overridden by the
|
||||
`GIT_TR2_PERF_BRIEF` environment variable. Defaults to false.
|
||||
`GIT_TRACE2_PERF_BRIEF` environment variable. Defaults to false.
|
||||
|
||||
trace2.eventBrief::
|
||||
Boolean. When true `time`, `filename`, and `line` fields are
|
||||
omitted from event output. May be overridden by the
|
||||
`GIT_TR2_EVENT_BRIEF` environment variable. Defaults to false.
|
||||
`GIT_TRACE2_EVENT_BRIEF` environment variable. Defaults to false.
|
||||
|
||||
trace2.eventNesting::
|
||||
Integer. Specifies desired depth of nested regions in the
|
||||
event output. Regions deeper than this value will be
|
||||
omitted. May be overridden by the `GIT_TR2_EVENT_NESTING`
|
||||
omitted. May be overridden by the `GIT_TRACE2_EVENT_NESTING`
|
||||
environment variable. Defaults to 2.
|
||||
|
||||
trace2.configParams::
|
||||
|
@ -45,7 +45,7 @@ trace2.configParams::
|
|||
settings that should be recorded in the trace2 output.
|
||||
For example, `core.*,remote.*.url` would cause the trace2
|
||||
output to contain events listing each configured remote.
|
||||
May be overridden by the `GIT_TR2_CONFIG_PARAMS` environment
|
||||
May be overridden by the `GIT_TRACE2_CONFIG_PARAMS` environment
|
||||
variable. Unset by default.
|
||||
|
||||
trace2.destinationDebug::
|
||||
|
@ -53,4 +53,4 @@ trace2.destinationDebug::
|
|||
trace target destination cannot be opened for writing.
|
||||
By default, these errors are suppressed and tracing is
|
||||
silently disabled. May be overridden by the
|
||||
`GIT_TR2_DST_DEBUG` environment variable.
|
||||
`GIT_TRACE2_DST_DEBUG` environment variable.
|
||||
|
|
|
@ -660,26 +660,53 @@ of clones and fetches.
|
|||
When a curl trace is enabled (see `GIT_TRACE_CURL` above), do not dump
|
||||
data (that is, only dump info lines and headers).
|
||||
|
||||
`GIT_TR2`::
|
||||
`GIT_TRACE2`::
|
||||
Enables more detailed trace messages from the "trace2" library.
|
||||
Output from `GIT_TR2` is a simple text-based format for human
|
||||
Output from `GIT_TRACE2` is a simple text-based format for human
|
||||
readability.
|
||||
+
|
||||
The `GIT_TR2` variables can take many values. Any value available to
|
||||
the `GIT_TRACE` variables is also available to `GIT_TR2`. The `GIT_TR2`
|
||||
variables can also specify a Unix Domain Socket. See
|
||||
link:technical/api-trace2.html[Trace2 documentation] for full details.
|
||||
If this variable is set to "1", "2" or "true" (comparison
|
||||
is case insensitive), trace messages will be printed to
|
||||
stderr.
|
||||
+
|
||||
If the variable is set to an integer value greater than 2
|
||||
and lower than 10 (strictly) then Git will interpret this
|
||||
value as an open file descriptor and will try to write the
|
||||
trace messages into this file descriptor.
|
||||
+
|
||||
Alternatively, if the variable is set to an absolute path
|
||||
(starting with a '/' character), Git will interpret this
|
||||
as a file path and will try to append the trace messages
|
||||
to it. If the path already exists and is a directory, the
|
||||
trace messages will be written to files (one per process)
|
||||
in that directory, named according to the last component
|
||||
of the SID and an optional counter (to avoid filename
|
||||
collisions).
|
||||
+
|
||||
In addition, if the variable is set to
|
||||
`af_unix:[<socket_type>:]<absolute-pathname>`, Git will try
|
||||
to open the path as a Unix Domain Socket. The socket type
|
||||
can be either `stream` or `dgram`.
|
||||
+
|
||||
Unsetting the variable, or setting it to empty, "0" or
|
||||
"false" (case insensitive) disables trace messages.
|
||||
+
|
||||
See link:technical/api-trace2.html[Trace2 documentation]
|
||||
for full details.
|
||||
|
||||
`GIT_TR2_EVENT`::
|
||||
|
||||
`GIT_TRACE2_EVENT`::
|
||||
This setting writes a JSON-based format that is suited for machine
|
||||
interpretation. See link:technical/api-trace2.html[Trace2 documentation]
|
||||
for full details.
|
||||
interpretation.
|
||||
See `GIT_TRACE2` for available trace output options and
|
||||
link:technical/api-trace2.html[Trace2 documentation] for full details.
|
||||
|
||||
`GIT_TR2_PERF`::
|
||||
In addition to the text-based messages available in `GIT_TR2`, this
|
||||
`GIT_TRACE2_PERF`::
|
||||
In addition to the text-based messages available in `GIT_TRACE2`, this
|
||||
setting writes a column-based format for understanding nesting
|
||||
regions. See link:technical/api-trace2.html[Trace2 documentation]
|
||||
for full details.
|
||||
regions.
|
||||
See `GIT_TRACE2` for available trace output options and
|
||||
link:technical/api-trace2.html[Trace2 documentation] for full details.
|
||||
|
||||
`GIT_REDACT_COOKIES`::
|
||||
This can be set to a comma-separated list of strings. When a curl trace
|
||||
|
|
|
@ -23,7 +23,7 @@ formats in the future. This might be used to define a binary format,
|
|||
for example.
|
||||
|
||||
Trace2 is controlled using `trace2.*` config values in the system and
|
||||
global config files and `GIT_TR2*` environment variables. Trace2 does
|
||||
global config files and `GIT_TRACE2*` environment variables. Trace2 does
|
||||
not read from repo local or worktree config files or respect `-c`
|
||||
command line config settings.
|
||||
|
||||
|
@ -42,7 +42,7 @@ config setting.
|
|||
For example
|
||||
|
||||
------------
|
||||
$ export GIT_TR2=~/log.normal
|
||||
$ export GIT_TRACE2=~/log.normal
|
||||
$ git version
|
||||
git version 2.20.1.155.g426c96fcdb
|
||||
------------
|
||||
|
@ -71,13 +71,13 @@ $ cat ~/log.normal
|
|||
The performance format target (PERF) is a column-based format to
|
||||
replace GIT_TRACE_PERFORMANCE and is suitable for development and
|
||||
testing, possibly to complement tools like gprof. This format is
|
||||
enabled with the `GIT_TR2_PERF` environment variable or the
|
||||
enabled with the `GIT_TRACE2_PERF` environment variable or the
|
||||
`trace2.perfTarget` system or global config setting.
|
||||
|
||||
For example
|
||||
|
||||
------------
|
||||
$ export GIT_TR2_PERF=~/log.perf
|
||||
$ export GIT_TRACE2_PERF=~/log.perf
|
||||
$ git version
|
||||
git version 2.20.1.155.g426c96fcdb
|
||||
------------
|
||||
|
@ -104,14 +104,14 @@ $ cat ~/log.perf
|
|||
=== The Event Format Target
|
||||
|
||||
The event format target is a JSON-based format of event data suitable
|
||||
for telemetry analysis. This format is enabled with the `GIT_TR2_EVENT`
|
||||
for telemetry analysis. This format is enabled with the `GIT_TRACE2_EVENT`
|
||||
environment variable or the `trace2.eventTarget` system or global config
|
||||
setting.
|
||||
|
||||
For example
|
||||
|
||||
------------
|
||||
$ export GIT_TR2_EVENT=~/log.event
|
||||
$ export GIT_TRACE2_EVENT=~/log.event
|
||||
$ git version
|
||||
git version 2.20.1.155.g426c96fcdb
|
||||
------------
|
||||
|
@ -273,7 +273,7 @@ significantly affects program performance or behavior, such as
|
|||
Emits a "def_param" messages for "important" configuration
|
||||
settings.
|
||||
+
|
||||
The environment variable `GIT_TR2_CONFIG_PARAMS` or the `trace2.configParams`
|
||||
The environment variable `GIT_TRACE2_CONFIG_PARAMS` or the `trace2.configParams`
|
||||
config value can be set to a
|
||||
list of patterns of important configuration settings, for example:
|
||||
`core.*,remote.*.url`. This function will iterate over all config
|
||||
|
@ -465,7 +465,7 @@ Events are written as lines of the form:
|
|||
Note that this may contain embedded LF or CRLF characters that are
|
||||
not escaped, so the event may spill across multiple lines.
|
||||
|
||||
If `GIT_TR2_BRIEF` or `trace2.normalBrief` is true, the `time`, `filename`,
|
||||
If `GIT_TRACE2_BRIEF` or `trace2.normalBrief` is true, the `time`, `filename`,
|
||||
and `line` fields are omitted.
|
||||
|
||||
This target is intended to be more of a summary (like GIT_TRACE) and
|
||||
|
@ -533,7 +533,7 @@ This field is in anticipation of in-proc submodules in the future.
|
|||
15:33:33.532712 wt-status.c:2331 | d0 | main | region_leave | r1 | 0.127568 | 0.001504 | status | label:print
|
||||
------------
|
||||
|
||||
If `GIT_TR2_PERF_BRIEF` or `trace2.perfBrief` is true, the `time`, `file`,
|
||||
If `GIT_TRACE2_PERF_BRIEF` or `trace2.perfBrief` is true, the `time`, `file`,
|
||||
and `line` fields are omitted.
|
||||
|
||||
------------
|
||||
|
@ -598,7 +598,7 @@ The following key/value pairs are common to all events:
|
|||
`"repo":<repo-id>`::
|
||||
when present, is the integer repo-id as described previously.
|
||||
|
||||
If `GIT_TR2_EVENT_BRIEF` or `trace2.eventBrief` is true, the `file`
|
||||
If `GIT_TRACE2_EVENT_BRIEF` or `trace2.eventBrief` is true, the `file`
|
||||
and `line` fields are omitted from all events and the `time` field is
|
||||
only present on the "start" and "atexit" events.
|
||||
|
||||
|
@ -911,7 +911,7 @@ visited.
|
|||
The `category` field may be used in a future enhancement to
|
||||
do category-based filtering.
|
||||
+
|
||||
`GIT_TR2_EVENT_NESTING` or `trace2.eventNesting` can be used to
|
||||
`GIT_TRACE2_EVENT_NESTING` or `trace2.eventNesting` can be used to
|
||||
filter deeply nested regions and data events. It defaults to "2".
|
||||
|
||||
`"region_leave"`::
|
||||
|
@ -1039,8 +1039,8 @@ rev-list, and gc. This example also shows that fetch took
|
|||
5.199 seconds and of that 4.932 was in ssh.
|
||||
+
|
||||
----------------
|
||||
$ export GIT_TR2_BRIEF=1
|
||||
$ export GIT_TR2=~/log.normal
|
||||
$ export GIT_TRACE2_BRIEF=1
|
||||
$ export GIT_TRACE2=~/log.normal
|
||||
$ git fetch origin
|
||||
...
|
||||
----------------
|
||||
|
@ -1075,8 +1075,8 @@ its name as "gc", it also reports the hierarchy as "fetch/gc".
|
|||
indented for clarity.)
|
||||
+
|
||||
----------------
|
||||
$ export GIT_TR2_BRIEF=1
|
||||
$ export GIT_TR2=~/log.normal
|
||||
$ export GIT_TRACE2_BRIEF=1
|
||||
$ export GIT_TRACE2=~/log.normal
|
||||
$ git fetch origin
|
||||
...
|
||||
----------------
|
||||
|
@ -1134,8 +1134,8 @@ In this example, scanning for untracked files ran from +0.012568 to
|
|||
+0.027149 (since the process started) and took 0.014581 seconds.
|
||||
+
|
||||
----------------
|
||||
$ export GIT_TR2_PERF_BRIEF=1
|
||||
$ export GIT_TR2_PERF=~/log.perf
|
||||
$ export GIT_TRACE2_PERF_BRIEF=1
|
||||
$ export GIT_TRACE2_PERF=~/log.perf
|
||||
$ git status
|
||||
...
|
||||
|
||||
|
@ -1180,8 +1180,8 @@ static enum path_treatment read_directory_recursive(struct dir_struct *dir,
|
|||
We can further investigate the time spent scanning for untracked files.
|
||||
+
|
||||
----------------
|
||||
$ export GIT_TR2_PERF_BRIEF=1
|
||||
$ export GIT_TR2_PERF=~/log.perf
|
||||
$ export GIT_TRACE2_PERF_BRIEF=1
|
||||
$ export GIT_TRACE2_PERF=~/log.perf
|
||||
$ git status
|
||||
...
|
||||
$ cat ~/log.perf
|
||||
|
@ -1236,8 +1236,8 @@ int read_index_from(struct index_state *istate, const char *path,
|
|||
This example shows that the index contained 3552 entries.
|
||||
+
|
||||
----------------
|
||||
$ export GIT_TR2_PERF_BRIEF=1
|
||||
$ export GIT_TR2_PERF=~/log.perf
|
||||
$ export GIT_TRACE2_PERF_BRIEF=1
|
||||
$ export GIT_TRACE2_PERF=~/log.perf
|
||||
$ git status
|
||||
...
|
||||
$ cat ~/log.perf
|
||||
|
@ -1310,8 +1310,8 @@ Data events are tagged with the active thread name. They are used
|
|||
to report the per-thread parameters.
|
||||
+
|
||||
----------------
|
||||
$ export GIT_TR2_PERF_BRIEF=1
|
||||
$ export GIT_TR2_PERF=~/log.perf
|
||||
$ export GIT_TRACE2_PERF_BRIEF=1
|
||||
$ export GIT_TRACE2_PERF=~/log.perf
|
||||
$ git status
|
||||
...
|
||||
$ cat ~/log.perf
|
||||
|
|
|
@ -93,7 +93,7 @@ test_expect_success 'No extra GIT_* on alias scripts' '
|
|||
sed -n \
|
||||
-e "/^GIT_PREFIX=/d" \
|
||||
-e "/^GIT_TEXTDOMAINDIR=/d" \
|
||||
-e "/^GIT_TR2_PARENT/d" \
|
||||
-e "/^GIT_TRACE2_PARENT/d" \
|
||||
-e "/^GIT_/s/=.*//p" |
|
||||
sort
|
||||
EOF
|
||||
|
|
|
@ -4,9 +4,9 @@ test_description='test trace2 facility (normal target)'
|
|||
. ./test-lib.sh
|
||||
|
||||
# Turn off any inherited trace2 settings for this test.
|
||||
sane_unset GIT_TR2 GIT_TR2_PERF GIT_TR2_EVENT
|
||||
sane_unset GIT_TR2_BRIEF
|
||||
sane_unset GIT_TR2_CONFIG_PARAMS
|
||||
sane_unset GIT_TRACE2 GIT_TRACE2_PERF GIT_TRACE2_EVENT
|
||||
sane_unset GIT_TRACE2_BRIEF
|
||||
sane_unset GIT_TRACE2_CONFIG_PARAMS
|
||||
|
||||
# Add t/helper directory to PATH so that we can use a relative
|
||||
# path to run nested instances of test-tool.exe (see 004child).
|
||||
|
@ -27,12 +27,12 @@ V=$(git version | sed -e 's/^git version //') && export V
|
|||
# to whatever filtering that target decides to do).
|
||||
# This script tests the normal target in isolation.
|
||||
#
|
||||
# Defer setting GIT_TR2 until the actual command line we want to test
|
||||
# Defer setting GIT_TRACE2 until the actual command line we want to test
|
||||
# because hidden git and test-tool commands run by the test harness
|
||||
# can contaminate our output.
|
||||
|
||||
# Enable "brief" feature which turns off "<clock> <file>:<line> " prefix.
|
||||
GIT_TR2_BRIEF=1 && export GIT_TR2_BRIEF
|
||||
GIT_TRACE2_BRIEF=1 && export GIT_TRACE2_BRIEF
|
||||
|
||||
# Basic tests of the trace2 normal stream. Since this stream is used
|
||||
# primarily with printf-style debugging/tracing, we do limited testing
|
||||
|
@ -54,7 +54,7 @@ GIT_TR2_BRIEF=1 && export GIT_TR2_BRIEF
|
|||
|
||||
test_expect_success 'normal stream, return code 0' '
|
||||
test_when_finished "rm trace.normal actual expect" &&
|
||||
GIT_TR2="$(pwd)/trace.normal" test-tool trace2 001return 0 &&
|
||||
GIT_TRACE2="$(pwd)/trace.normal" test-tool trace2 001return 0 &&
|
||||
perl "$TEST_DIRECTORY/t0210/scrub_normal.perl" <trace.normal >actual &&
|
||||
cat >expect <<-EOF &&
|
||||
version $V
|
||||
|
@ -68,7 +68,7 @@ test_expect_success 'normal stream, return code 0' '
|
|||
|
||||
test_expect_success 'normal stream, return code 1' '
|
||||
test_when_finished "rm trace.normal actual expect" &&
|
||||
test_must_fail env GIT_TR2="$(pwd)/trace.normal" test-tool trace2 001return 1 &&
|
||||
test_must_fail env GIT_TRACE2="$(pwd)/trace.normal" test-tool trace2 001return 1 &&
|
||||
perl "$TEST_DIRECTORY/t0210/scrub_normal.perl" <trace.normal >actual &&
|
||||
cat >expect <<-EOF &&
|
||||
version $V
|
||||
|
@ -83,7 +83,7 @@ test_expect_success 'normal stream, return code 1' '
|
|||
test_expect_success 'automatic filename' '
|
||||
test_when_finished "rm -r traces actual expect" &&
|
||||
mkdir traces &&
|
||||
GIT_TR2="$(pwd)/traces" test-tool trace2 001return 0 &&
|
||||
GIT_TRACE2="$(pwd)/traces" test-tool trace2 001return 0 &&
|
||||
perl "$TEST_DIRECTORY/t0210/scrub_normal.perl" <"$(ls traces/*)" >actual &&
|
||||
cat >expect <<-EOF &&
|
||||
version $V
|
||||
|
@ -101,7 +101,7 @@ test_expect_success 'automatic filename' '
|
|||
|
||||
test_expect_success 'normal stream, exit code 0' '
|
||||
test_when_finished "rm trace.normal actual expect" &&
|
||||
GIT_TR2="$(pwd)/trace.normal" test-tool trace2 002exit 0 &&
|
||||
GIT_TRACE2="$(pwd)/trace.normal" test-tool trace2 002exit 0 &&
|
||||
perl "$TEST_DIRECTORY/t0210/scrub_normal.perl" <trace.normal >actual &&
|
||||
cat >expect <<-EOF &&
|
||||
version $V
|
||||
|
@ -115,7 +115,7 @@ test_expect_success 'normal stream, exit code 0' '
|
|||
|
||||
test_expect_success 'normal stream, exit code 1' '
|
||||
test_when_finished "rm trace.normal actual expect" &&
|
||||
test_must_fail env GIT_TR2="$(pwd)/trace.normal" test-tool trace2 002exit 1 &&
|
||||
test_must_fail env GIT_TRACE2="$(pwd)/trace.normal" test-tool trace2 002exit 1 &&
|
||||
perl "$TEST_DIRECTORY/t0210/scrub_normal.perl" <trace.normal >actual &&
|
||||
cat >expect <<-EOF &&
|
||||
version $V
|
||||
|
@ -133,7 +133,7 @@ test_expect_success 'normal stream, exit code 1' '
|
|||
|
||||
test_expect_success 'normal stream, error event' '
|
||||
test_when_finished "rm trace.normal actual expect" &&
|
||||
GIT_TR2="$(pwd)/trace.normal" test-tool trace2 003error "hello world" "this is a test" &&
|
||||
GIT_TRACE2="$(pwd)/trace.normal" test-tool trace2 003error "hello world" "this is a test" &&
|
||||
perl "$TEST_DIRECTORY/t0210/scrub_normal.perl" <trace.normal >actual &&
|
||||
cat >expect <<-EOF &&
|
||||
version $V
|
||||
|
@ -147,7 +147,7 @@ test_expect_success 'normal stream, error event' '
|
|||
test_cmp expect actual
|
||||
'
|
||||
|
||||
sane_unset GIT_TR2_BRIEF
|
||||
sane_unset GIT_TRACE2_BRIEF
|
||||
|
||||
# Now test without environment variables and get all Trace2 settings
|
||||
# from the global config.
|
||||
|
|
|
@ -4,9 +4,9 @@ test_description='test trace2 facility (perf target)'
|
|||
. ./test-lib.sh
|
||||
|
||||
# Turn off any inherited trace2 settings for this test.
|
||||
sane_unset GIT_TR2 GIT_TR2_PERF GIT_TR2_EVENT
|
||||
sane_unset GIT_TR2_PERF_BRIEF
|
||||
sane_unset GIT_TR2_CONFIG_PARAMS
|
||||
sane_unset GIT_TRACE2 GIT_TRACE2_PERF GIT_TRACE2_EVENT
|
||||
sane_unset GIT_TRACE2_PERF_BRIEF
|
||||
sane_unset GIT_TRACE2_CONFIG_PARAMS
|
||||
|
||||
# Add t/helper directory to PATH so that we can use a relative
|
||||
# path to run nested instances of test-tool.exe (see 004child).
|
||||
|
@ -27,13 +27,13 @@ V=$(git version | sed -e 's/^git version //') && export V
|
|||
# to whatever filtering that target decides to do).
|
||||
# Test each target independently.
|
||||
#
|
||||
# Defer setting GIT_TR2_PERF until the actual command we want to
|
||||
# Defer setting GIT_TRACE2_PERF until the actual command we want to
|
||||
# test because hidden git and test-tool commands in the test
|
||||
# harness can contaminate our output.
|
||||
|
||||
# Enable "brief" feature which turns off the prefix:
|
||||
# "<clock> <file>:<line> | <nr_parents> | "
|
||||
GIT_TR2_PERF_BRIEF=1 && export GIT_TR2_PERF_BRIEF
|
||||
GIT_TRACE2_PERF_BRIEF=1 && export GIT_TRACE2_PERF_BRIEF
|
||||
|
||||
# Repeat some of the t0210 tests using the perf target stream instead of
|
||||
# the normal stream.
|
||||
|
@ -46,7 +46,7 @@ GIT_TR2_PERF_BRIEF=1 && export GIT_TR2_PERF_BRIEF
|
|||
|
||||
test_expect_success 'perf stream, return code 0' '
|
||||
test_when_finished "rm trace.perf actual expect" &&
|
||||
GIT_TR2_PERF="$(pwd)/trace.perf" test-tool trace2 001return 0 &&
|
||||
GIT_TRACE2_PERF="$(pwd)/trace.perf" test-tool trace2 001return 0 &&
|
||||
perl "$TEST_DIRECTORY/t0211/scrub_perf.perl" <trace.perf >actual &&
|
||||
cat >expect <<-EOF &&
|
||||
d0|main|version|||||$V
|
||||
|
@ -60,7 +60,7 @@ test_expect_success 'perf stream, return code 0' '
|
|||
|
||||
test_expect_success 'perf stream, return code 1' '
|
||||
test_when_finished "rm trace.perf actual expect" &&
|
||||
test_must_fail env GIT_TR2_PERF="$(pwd)/trace.perf" test-tool trace2 001return 1 &&
|
||||
test_must_fail env GIT_TRACE2_PERF="$(pwd)/trace.perf" test-tool trace2 001return 1 &&
|
||||
perl "$TEST_DIRECTORY/t0211/scrub_perf.perl" <trace.perf >actual &&
|
||||
cat >expect <<-EOF &&
|
||||
d0|main|version|||||$V
|
||||
|
@ -78,7 +78,7 @@ test_expect_success 'perf stream, return code 1' '
|
|||
|
||||
test_expect_success 'perf stream, error event' '
|
||||
test_when_finished "rm trace.perf actual expect" &&
|
||||
GIT_TR2_PERF="$(pwd)/trace.perf" test-tool trace2 003error "hello world" "this is a test" &&
|
||||
GIT_TRACE2_PERF="$(pwd)/trace.perf" test-tool trace2 003error "hello world" "this is a test" &&
|
||||
perl "$TEST_DIRECTORY/t0211/scrub_perf.perl" <trace.perf >actual &&
|
||||
cat >expect <<-EOF &&
|
||||
d0|main|version|||||$V
|
||||
|
@ -124,7 +124,7 @@ test_expect_success 'perf stream, error event' '
|
|||
|
||||
test_expect_success 'perf stream, child processes' '
|
||||
test_when_finished "rm trace.perf actual expect" &&
|
||||
GIT_TR2_PERF="$(pwd)/trace.perf" test-tool trace2 004child test-tool trace2 004child test-tool trace2 001return 0 &&
|
||||
GIT_TRACE2_PERF="$(pwd)/trace.perf" test-tool trace2 004child test-tool trace2 004child test-tool trace2 001return 0 &&
|
||||
perl "$TEST_DIRECTORY/t0211/scrub_perf.perl" <trace.perf >actual &&
|
||||
cat >expect <<-EOF &&
|
||||
d0|main|version|||||$V
|
||||
|
@ -150,7 +150,7 @@ test_expect_success 'perf stream, child processes' '
|
|||
test_cmp expect actual
|
||||
'
|
||||
|
||||
sane_unset GIT_TR2_PERF_BRIEF
|
||||
sane_unset GIT_TRACE2_PERF_BRIEF
|
||||
|
||||
# Now test without environment variables and get all Trace2 settings
|
||||
# from the global config.
|
||||
|
|
|
@ -4,9 +4,9 @@ test_description='test trace2 facility'
|
|||
. ./test-lib.sh
|
||||
|
||||
# Turn off any inherited trace2 settings for this test.
|
||||
sane_unset GIT_TR2 GIT_TR2_PERF GIT_TR2_EVENT
|
||||
sane_unset GIT_TR2_BARE
|
||||
sane_unset GIT_TR2_CONFIG_PARAMS
|
||||
sane_unset GIT_TRACE2 GIT_TRACE2_PERF GIT_TRACE2_EVENT
|
||||
sane_unset GIT_TRACE2_BARE
|
||||
sane_unset GIT_TRACE2_CONFIG_PARAMS
|
||||
|
||||
perl -MJSON::PP -e 0 >/dev/null 2>&1 && test_set_prereq JSON_PP
|
||||
|
||||
|
@ -29,7 +29,7 @@ V=$(git version | sed -e 's/^git version //') && export V
|
|||
# to whatever filtering that target decides to do).
|
||||
# Test each target independently.
|
||||
#
|
||||
# Defer setting GIT_TR2_PERF until the actual command we want to
|
||||
# Defer setting GIT_TRACE2_PERF until the actual command we want to
|
||||
# test because hidden git and test-tool commands in the test
|
||||
# harness can contaminate our output.
|
||||
|
||||
|
@ -42,7 +42,7 @@ V=$(git version | sed -e 's/^git version //') && export V
|
|||
|
||||
test_expect_success JSON_PP 'event stream, error event' '
|
||||
test_when_finished "rm trace.event actual expect" &&
|
||||
GIT_TR2_EVENT="$(pwd)/trace.event" test-tool trace2 003error "hello world" "this is a test" &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/trace.event" test-tool trace2 003error "hello world" "this is a test" &&
|
||||
perl "$TEST_DIRECTORY/t0212/parse_events.perl" <trace.event >actual &&
|
||||
sed -e "s/^|//" >expect <<-EOF &&
|
||||
|VAR1 = {
|
||||
|
@ -79,7 +79,7 @@ test_expect_success JSON_PP 'event stream, error event' '
|
|||
|
||||
test_expect_success JSON_PP 'event stream, return code 0' '
|
||||
test_when_finished "rm trace.event actual expect" &&
|
||||
GIT_TR2_EVENT="$(pwd)/trace.event" test-tool trace2 004child test-tool trace2 004child test-tool trace2 001return 0 &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/trace.event" test-tool trace2 004child test-tool trace2 004child test-tool trace2 001return 0 &&
|
||||
perl "$TEST_DIRECTORY/t0212/parse_events.perl" <trace.event >actual &&
|
||||
sed -e "s/^|//" >expect <<-EOF &&
|
||||
|VAR1 = {
|
||||
|
@ -168,7 +168,7 @@ test_expect_success JSON_PP 'event stream, list config' '
|
|||
test_when_finished "rm trace.event actual expect" &&
|
||||
git config --local t0212.abc 1 &&
|
||||
git config --local t0212.def "hello world" &&
|
||||
GIT_TR2_EVENT="$(pwd)/trace.event" GIT_TR2_CONFIG_PARAMS="t0212.*" test-tool trace2 001return 0 &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/trace.event" GIT_TRACE2_CONFIG_PARAMS="t0212.*" test-tool trace2 001return 0 &&
|
||||
perl "$TEST_DIRECTORY/t0212/parse_events.perl" <trace.event >actual &&
|
||||
sed -e "s/^|//" >expect <<-EOF &&
|
||||
|VAR1 = {
|
||||
|
@ -201,7 +201,7 @@ test_expect_success JSON_PP 'event stream, list config' '
|
|||
|
||||
test_expect_success JSON_PP 'basic trace2_data' '
|
||||
test_when_finished "rm trace.event actual expect" &&
|
||||
GIT_TR2_EVENT="$(pwd)/trace.event" test-tool trace2 006data test_category k1 v1 test_category k2 v2 &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/trace.event" test-tool trace2 006data test_category k1 v1 test_category k2 v2 &&
|
||||
perl "$TEST_DIRECTORY/t0212/parse_events.perl" <trace.event >actual &&
|
||||
sed -e "s/^|//" >expect <<-EOF &&
|
||||
|VAR1 = {
|
||||
|
|
|
@ -26,7 +26,7 @@ use Getopt::Long;
|
|||
|
||||
# The version of the trace2 event target format that we understand.
|
||||
# This is reported in the 'version' event in the 'evt' field.
|
||||
# It comes from the GIT_TR2_EVENT_VERSION macro in trace2/tr2_tgt_event.c
|
||||
# It comes from the GIT_TRACE2_EVENT_VERSION macro in trace2/tr2_tgt_event.c
|
||||
my $evt_version = '1';
|
||||
|
||||
my $show_children = 1;
|
||||
|
|
2
trace2.h
2
trace2.h
|
@ -130,7 +130,7 @@ void trace2_cmd_alias_fl(const char *file, int line, const char *alias,
|
|||
* list of patterns configured important. For example:
|
||||
* git config --system trace2.configParams 'core.*,remote.*.url'
|
||||
* or:
|
||||
* GIT_TR2_CONFIG_PARAMS=core.*,remote.*.url"
|
||||
* GIT_TRACE2_CONFIG_PARAMS=core.*,remote.*.url"
|
||||
*
|
||||
* Note: this routine does a read-only iteration on the config data
|
||||
* (using read_early_config()), so it must not be called until enough
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#include "cache.h"
|
||||
#include "trace2/tr2_cmd_name.h"
|
||||
|
||||
#define TR2_ENVVAR_PARENT_NAME "GIT_TR2_PARENT_NAME"
|
||||
#define TR2_ENVVAR_PARENT_NAME "GIT_TRACE2_PARENT_NAME"
|
||||
|
||||
static struct strbuf tr2cmdname_hierarchy = STRBUF_INIT;
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
#include "trace2/tr2_tbuf.h"
|
||||
#include "trace2/tr2_sid.h"
|
||||
|
||||
#define TR2_ENVVAR_PARENT_SID "GIT_TR2_PARENT_SID"
|
||||
#define TR2_ENVVAR_PARENT_SID "GIT_TRACE2_PARENT_SID"
|
||||
|
||||
static struct strbuf tr2sid_buf = STRBUF_INIT;
|
||||
static int tr2sid_nr_git_parents;
|
||||
|
|
|
@ -21,33 +21,33 @@ struct tr2_sysenv_entry {
|
|||
* The strings in this table are constant and must match the published
|
||||
* config and environment variable names as described in the documentation.
|
||||
*
|
||||
* We do not define entries for the GIT_TR2_PARENT_* environment
|
||||
* We do not define entries for the GIT_TRACE2_PARENT_* environment
|
||||
* variables because they are transient and used to pass information
|
||||
* from parent to child git processes, rather than settings.
|
||||
*/
|
||||
/* clang-format off */
|
||||
static struct tr2_sysenv_entry tr2_sysenv_settings[] = {
|
||||
[TR2_SYSENV_CFG_PARAM] = { "GIT_TR2_CONFIG_PARAMS",
|
||||
[TR2_SYSENV_CFG_PARAM] = { "GIT_TRACE2_CONFIG_PARAMS",
|
||||
"trace2.configparams" },
|
||||
|
||||
[TR2_SYSENV_DST_DEBUG] = { "GIT_TR2_DST_DEBUG",
|
||||
[TR2_SYSENV_DST_DEBUG] = { "GIT_TRACE2_DST_DEBUG",
|
||||
"trace2.destinationdebug" },
|
||||
|
||||
[TR2_SYSENV_NORMAL] = { "GIT_TR2",
|
||||
[TR2_SYSENV_NORMAL] = { "GIT_TRACE2",
|
||||
"trace2.normaltarget" },
|
||||
[TR2_SYSENV_NORMAL_BRIEF] = { "GIT_TR2_BRIEF",
|
||||
[TR2_SYSENV_NORMAL_BRIEF] = { "GIT_TRACE2_BRIEF",
|
||||
"trace2.normalbrief" },
|
||||
|
||||
[TR2_SYSENV_EVENT] = { "GIT_TR2_EVENT",
|
||||
[TR2_SYSENV_EVENT] = { "GIT_TRACE2_EVENT",
|
||||
"trace2.eventtarget" },
|
||||
[TR2_SYSENV_EVENT_BRIEF] = { "GIT_TR2_EVENT_BRIEF",
|
||||
[TR2_SYSENV_EVENT_BRIEF] = { "GIT_TRACE2_EVENT_BRIEF",
|
||||
"trace2.eventbrief" },
|
||||
[TR2_SYSENV_EVENT_NESTING] = { "GIT_TR2_EVENT_NESTING",
|
||||
[TR2_SYSENV_EVENT_NESTING] = { "GIT_TRACE2_EVENT_NESTING",
|
||||
"trace2.eventnesting" },
|
||||
|
||||
[TR2_SYSENV_PERF] = { "GIT_TR2_PERF",
|
||||
[TR2_SYSENV_PERF] = { "GIT_TRACE2_PERF",
|
||||
"trace2.perftarget" },
|
||||
[TR2_SYSENV_PERF_BRIEF] = { "GIT_TR2_PERF_BRIEF",
|
||||
[TR2_SYSENV_PERF_BRIEF] = { "GIT_TRACE2_PERF_BRIEF",
|
||||
"trace2.perfbrief" },
|
||||
};
|
||||
/* clang-format on */
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
*
|
||||
* Note that this set does not contain any of the transient
|
||||
* environment variables used to pass information from parent
|
||||
* to child git processes, such "GIT_TR2_PARENT_SID".
|
||||
* to child git processes, such "GIT_TRACE2_PARENT_SID".
|
||||
*/
|
||||
enum tr2_sysenv_variable {
|
||||
TR2_SYSENV_CFG_PARAM = 0,
|
||||
|
|
Загрузка…
Ссылка в новой задаче