This tool is used to inspect and parse the Bazel workspace logs. To generate the workspace log, run e.g.,:
bazel build \
--experimental_workspace_rules_log_file=/tmp/workspace.log :hello_world
Then build the parser and run it.
bazel build src/tools/workspacelog:all
bazel-bin/src/tools/workspacelog/parser --log_path=/tmp/workspace.log
This will simply print the log contents to stdout in text form.
To output results to a file, use --output_path:
bazel-bin/src/tools/workspacelog/parser --log_path=/tmp/workspace.log \
--output_path=/tmp/workspace.log.txt
To exclude all events produced by a certain rule, use --exclude_rule:
bazel build src/tools/workspacelog:all
bazel-bin/src/tools/workspacelog/parser --log_path=/tmp/workspace.log \
--exclude_rule "//external:local_config_cc"
Note that --exclude_rule may be specified multiple times.
bazel build src/tools/workspacelog:all
bazel-bin/src/tools/workspacelog/parser --log_path=/tmp/workspace.log \
--exclude_rule "//external:local_config_cc" \
--exclude_rule "//external:dep"
For example, the above will filter out any events produced by rules //external:local_config_cc or //external:dep