diff options
author | Josh Steadmon <steadmon@google.com> | 2020-03-21 00:06:15 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2020-03-23 23:14:53 +0300 |
commit | 3d3adaad914441a6e7b916eb8dfd5ae638aab068 (patch) | |
tree | 19b976864a32cd6a80e8c2c35339db0a39c0aeba /trace2.h | |
parent | 98cedd0233ee88e69711f79d1126b6bd772ff5bd (diff) |
trace2: teach Git to log environment variables
Via trace2, Git can already log interesting config parameters (see the
trace2_cmd_list_config() function). However, this can grant an
incomplete picture because many config parameters also allow overrides
via environment variables.
To allow for more complete logs, we add a new trace2_cmd_list_env_vars()
function and supporting implementation, modeled after the pre-existing
config param logging implementation.
Signed-off-by: Josh Steadmon <steadmon@google.com>
Acked-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'trace2.h')
-rw-r--r-- | trace2.h | 13 |
1 files changed, 13 insertions, 0 deletions
@@ -183,6 +183,19 @@ void trace2_cmd_list_config_fl(const char *file, int line); #define trace2_cmd_list_config() trace2_cmd_list_config_fl(__FILE__, __LINE__) /* + * Emit one or more 'def_param' events for "important" environment variables. + * + * Use the TR2_SYSENV_ENV_VARS setting to register a comma-separated list of + * environment variables considered important. For example: + * git config --system trace2.envVars 'GIT_HTTP_USER_AGENT,GIT_CONFIG' + * or: + * GIT_TRACE2_ENV_VARS="GIT_HTTP_USER_AGENT,GIT_CONFIG" + */ +void trace2_cmd_list_env_vars_fl(const char *file, int line); + +#define trace2_cmd_list_env_vars() trace2_cmd_list_env_vars_fl(__FILE__, __LINE__) + +/* * Emit a "def_param" event for the given config key/value pair IF * we consider the key to be "important". * |