gpt4 book ai didi

bazel - 如何捕获转瞬即逝的 bazel 控制台输出

转载 作者:行者123 更新时间:2023-12-05 08:26:05 35 4
gpt4 key购买 nike

在 bazel 构建期间,有一堆文本飞过,暂时显示然后从屏幕上删除。这发生在整个构建过程中。我尝试了几种重定向技术,将 stderr 重定向到标准输出但无济于事。我还尝试了 bazel 的详细标志。

问题:有什么方法可以捕获 bazel 生成的这个转瞬即逝的控制台输出吗?我想至少研究一下在带走之前呈现的信息,更多的是作为学习练习和熟悉。

最佳答案

这些选项应该允许您展开所有由操作/任务生成的日志消息并将它们重定向到一个文件。

# .bazelrc
common --color=no
common --curses=yes

build --show_progress_rate_limit=0
build --show_task_finish
build --show_timestamps
build --worker_verbose

设置 color=noshow_progress_rate_limit=0 会导致进度消息在终端中扩展(并保留)。curses=yes 影响重定向(至少在我的机器上)。其他标志只是向日志添加更多信息。

示例输出(bash、bazel 1.0.0)

$> bazel build :my_project >& /tmp/bazel_build.log
$> cat /tmp/bazel_build.log

(11:22:46) INFO: Writing tracer profile to '.../command.profile.gz'
(11:22:46) INFO: Current date is 2019-11-01
(11:22:46) Loading: loading...
(11:22:46) Loading:
(11:22:46) Loading: 0 packages loaded
(11:22:46) Loading: 0 packages loaded
Fetching @bazel_tools; fetching

(11:22:46) Loading: 0 packages loaded
Fetching @bazel_tools; fetching

(11:22:46) Loading: 0 packages loaded
currently loading: path/to/my/project

(11:22:46) Analyzing: target //path/to/my/project:my_project (1 packages l\
oaded)

[...]

(11:22:46) INFO: Analyzed target //path/to/my/project:my_project (14 packages loaded, 670 targets configured).
(11:22:46)
(11:22:46) INFO: Found 1 target...
(11:22:46)
(11:22:46) [0 / 1] [Prepa] BazelWorkspaceStatusAction stable-status.txt
(11:22:46) [1 / 13] [Prepa] //path/to/my/project:my_project
(11:22:46) [5 / 12] 3 actions, 0 running
[Prepa] @deps//:my_dependency

(11:22:46) [10 / 12] [Scann] Compiling path/to/my/project/main.cc
(11:22:46) [10 / 12] [Prepa] Compiling path/to/my/project/main.cc
(11:22:46) [10 / 12] .../project:my_project; 0s processwrapper-sandbox

(11:22:46) [11 / 12] [Prepa] Linking path/to/my/project/my_project
Target //path/to/my/project:my_project up-to-date:
(11:22:46) [12 / 12] checking cached actions
bazel-bin/path/to/my/project/my_project
(11:22:46) [12 / 12] checking cached actions
(11:22:46) INFO: Elapsed time: 0.493s, Critical Path: 0.29s
(11:22:46) [12 / 12] checking cached actions
(11:22:46) INFO: 2 processes: 2 processwrapper-sandbox.
(11:22:46) [12 / 12] checking cached actions
(11:22:46) INFO: Build completed successfully, 12 total actions
(11:22:46) INFO: Build completed successfully, 12 total actions

希望这对您有所帮助。

关于bazel - 如何捕获转瞬即逝的 bazel 控制台输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58652382/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com