如何关闭dbt run执行过程中输出的运行日志?
dbt 0.19.1版本冗余运行日志过滤解决方案
- 调整日志输出级别
dbt 0.19.1原生支持通过--log-level参数调整日志输出等级,默认等级为info,会打印所有模型运行的全量进度日志。将日志等级调整为warn及以上,即可过滤掉所有单模型启动、运行完成的info级冗余日志,仅保留告警和错误信息:
如果需要完全关闭非错误输出,可以将等级调整为error。dbt run --log-level warn - Shell管道过滤指定日志
如果你需要保留部分info级关键日志,只过滤掉单模型启动的冗余行,可以通过shell管道命令匹配排除不需要的内容:- Linux/macOS环境使用grep过滤:
# 仅排除模型启动的RUN日志,可按需添加更多匹配规则 dbt run | grep -v "START.*model.*\[RUN\]" - Windows PowerShell环境使用匹配过滤:
dbt run | Where-Object { $_ -notmatch "START.*model.*\[RUN\]" }
- Linux/macOS环境使用grep过滤:
- 日志落盘仅输出错误到终端
生产环境如果不需要实时查看运行进度,可以将全量日志输出到文件留存,终端仅打印错误信息,运行完成后如果有报错再查看日志文件即可:dbt run > dbt_full_run.log 2>&1
内容的提问来源于stack exchange,提问作者Dat Nguyen
相关产品推荐
相关产品推荐

