Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dbt debug changes #3486

Open
1 task done
VersusFacit opened this issue Jun 7, 2023 · 2 comments · May be fixed by #6926
Open
1 task done

dbt debug changes #3486

VersusFacit opened this issue Jun 7, 2023 · 2 comments · May be fixed by #6926
Assignees
Labels
content Improvements or additions to content improvement Use this when an area of the docs needs improvement as it's currently unclear

Comments

@VersusFacit
Copy link
Contributor

Contributions

  • I have read the contribution docs, and understand what's expected of me.

Link to the page on docs.getdbt.com requiring updates

This page is missing a ton of things about debug!

What part(s) of the page would you like to see updated?

  1. The "complete purpose" of debug -- that it checks user configuration for local runs of dbt on a number of axes.
  2. Flags like --connection which bypass execution of some steps
  3. What kind of system info (e.g. os, python, etc.) and dbt info (e.g. adapter version) is included
  4. Other flags uinque to dbt debug (some of which may be added later)

Additional information

This PR and it's issue details most of the recent work and why we chose it.

@VersusFacit VersusFacit added content Improvements or additions to content improvement Use this when an area of the docs needs improvement as it's currently unclear labels Jun 7, 2023
@mirnawong1
Copy link
Contributor

hey @VersusFacit ! thanks so much for opening this and i was going to work on adding this to the docs. can i confirm where i can find the flags? when i run dbt debug --help in the cloud cli, i only see --project-paths and don't see --connection?
Screenshot 2025-01-13 at 16 33 04

@mirnawong1 mirnawong1 self-assigned this Jan 20, 2025
@mirnawong1
Copy link
Contributor

@nataliefiann kindly shared the output and adding it here:

Usage: dbt debug [OPTIONS]

 Show information on the current dbt environment and check dependencies, then
 test the database connection. Not to be confused with the --debug option
 which increases verbosity.

Options:
 --cache-selected-only / --no-cache-selected-only
                 At start of run, populate relational cache
                 only for schemas containing selected nodes,
                 or for all schemas of interest.
 -d, --debug / --no-debug    Display debug logging during dbt execution.
                 Useful for debugging and making bug reports.
 --defer / --no-defer      If set, resolve unselected nodes by
                 deferring to the manifest within the --state
                 directory.
 --defer-state DIRECTORY     Override the state directory for deferral
                 only.
 --deprecated-favor-state TEXT  Internal flag for deprecating old env var.
 -x, --fail-fast / --no-fail-fast
                 Stop execution on first failure.
 --favor-state / --no-favor-state
                 If set, defer to the argument provided to
                 the state flag for resolving unselected
                 nodes, even if the node(s) exist as a
                 database object in the current environment.
 --indirect-selection [eager|cautious|buildable|empty]
                 Choose which tests to select that are
                 adjacent to selected resources. Eager is
                 most inclusive, cautious is most exclusive,
                 and buildable is in between. Empty includes
                 no tests at all.
 --log-cache-events / --no-log-cache-events
                 Enable verbose logging for relational cache
                 events to help when debugging.
 --log-format [text|debug|json|default]
                 Specify the format of logging to the console
                 and the log file. Use --log-format-file to
                 configure the format for the log file
                 differently than the console.
 --log-format-file [text|debug|json|default]
                 Specify the format of logging to the log
                 file by overriding the default value and the
                 general --log-format setting.
 --log-level [debug|info|warn|error|none]
                 Specify the minimum severity of events that
                 are logged to the console and the log file.
                 Use --log-level-file to configure the
                 severity for the log file differently than
                 the console.
 --log-level-file [debug|info|warn|error|none]
                 Specify the minimum severity of events that
                 are logged to the log file by overriding the
                 default value and the general --log-level
                 setting.
 --log-path PATH         Configure the 'log-path'. Only applies this
                 setting for the current run. Overrides the
                 'DBT_LOG_PATH' if it is set.
 --partial-parse / --no-partial-parse
                 Allow for partial parsing by looking for and
                 writing to a pickle file in the target
                 directory. This overrides the user
                 configuration file.
 --populate-cache / --no-populate-cache
                 At start of run, use `show` or
                 `information_schema` queries to populate a
                 relational cache, which can speed up
                 subsequent materializations.
 --print / --no-print      Output all {{ print() }} macro calls.
 --printer-width INTEGER     Sets the width of terminal output
 --profile TEXT         Which existing profile to load. Overrides
                 setting in dbt_project.yml.
 -q, --quiet / --no-quiet    Suppress all non-error logging to stdout.
                 Does not affect {{ print() }} macro calls.
 -r, --record-timing-info PATH  When this option is passed, dbt will output
                 low-level timing stats to the specified
                 file. Example: `--record-timing-info
                 output.profile`
 --send-anonymous-usage-stats / --no-send-anonymous-usage-stats
                 Send anonymous usage stats to dbt Labs.
 --state DIRECTORY        Unless overridden, use this state directory
                 for both state comparison and deferral.
 --static-parser / --no-static-parser
                 Use the static parser.
 -t, --target TEXT        Which target to load for the given profile
 --use-colors / --no-use-colors Specify whether log output is colorized in
                 the console and the log file. Use --use-
                 colors-file/--no-use-colors-file to colorize
                 the log file differently than the console.
 --use-colors-file / --no-use-colors-file
                 Specify whether log file output is colorized
                 by overriding the default value and the
                 general --use-colors/--no-use-colors
                 setting.
 --use-experimental-parser / --no-use-experimental-parser
                 Enable experimental parsing features.
 -V, -v, --version        Show version information and exit
 --version-check / --no-version-check
                 If set, ensure the installed dbt version
                 matches the require-dbt-version specified in
                 the dbt_project.yml file (if any).
                 Otherwise, allow them to differ.
 --warn-error          If dbt would normally warn, instead raise an
                 exception. Examples include --select that
                 selects nothing, deprecations,
                 configurations with no associated models,
                 invalid test configurations, and missing
                 sources/refs in tests.
 --warn-error-options WARNERROROPTIONSTYPE
                 If dbt would normally warn, instead raise an
                 exception based on include/exclude
                 configuration. Examples include --select
                 that selects nothing, deprecations,
                 configurations with no associated models,
                 invalid test configurations, and missing
                 sources/refs in tests. This argument should
                 be a YAML string, with keys 'include' or
                 'exclude'. eg. '{"include": "all",
                 "exclude": ["NoNodesForSelectionCriteria"]}'
 --write-json / --no-write-json Whether or not to write the manifest.json
                 and run_results.json files to the target
                 directory
 --connection          Test the connection to the target database
                 independent of dependency checks.
 --config-dir          Print a system-specific command to access
                 the directory that the current dbt project
                 is searching for a profiles.yml. Then, exit.
                 This flag renders other debug step flags no-
                 ops.
 --profiles-dir PATH       Which directory to look in for the
                 profiles.yml file. If not set, dbt will look
                 in the current working directory first, then
                 HOME/.dbt/
 --project-dir PATH       Which directory to look in for the
                 dbt_project.yml file. Default is the current
                 working directory and its parents.
 --vars YAML           Supply variables to the project. This
                 argument overrides variables defined in your
                 dbt_project.yml file. This argument should
                 be a YAML string, eg. '{my_variable:
                 my_value}'
 -h, --help           Show this message and exit.

@mirnawong1 mirnawong1 linked a pull request Feb 19, 2025 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
content Improvements or additions to content improvement Use this when an area of the docs needs improvement as it's currently unclear
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants