注意
此内容描述了 CodeQL CLI 的最新发布版本。有关此版本的更多信息,请参阅 https://github.com/github/codeql-cli-binaries/releases。
要查看早期版本中此命令可用的选项详情,请在终端中使用 --help 选项运行该命令。
概要
codeql generate log-summary <options>... -- <input> <result>
codeql generate log-summary <options>... -- <input> <result>
描述
[高级] 创建结构化日志文件的摘要。
此命令生成结构化 JSON 评估器事件日志的摘要。该命令的输出旨在比日志文件本身在不同 CLI 版本之间更稳定。因此,在实现使用日志输出的脚本时,强烈建议运行此命令并使用其输出,而不是直接使用事件日志。
选项
主要选项
<input>
[必需] 要生成摘要的事件日志文件路径。
<result>
输出汇总日志文件的目标位置路径。如果省略,则摘要将输出到标准输出。
--minify-output
在适用情况下,省略输出摘要中的空白字符。结果将降低可读性,但占用更少的内存。此选项仅对某些输出格式生效。
--utc
[高级] 此命令生成的摘要中的某些时间戳可能使用运行机器的本地时区。启用此标志会强制所有时间戳使用 UTC。
--format=<format>
控制生成的输出格式。
predicates (default): 对每个谓词执行的计算生成摘要。这将是一系列 JSON 对象流,默认情况下由两个换行符分隔,如果传入 --minify-output 选项,则由一个换行符分隔。
text: 生成对评估运行的人类可读摘要。
overall: 生成一个 JSON 文件,包含关于评估运行的整体信息,包括一些汇总统计以及关于执行过程中最耗时评估的信息。
--[no-]deduplicate-stage-summaries
[高级] 此选项仅在 text 格式下有效。如果传入,将导致摘要表格中最耗费资源的谓词不再在查询共享的阶段重复出现。其副作用是将所有摘要表格移至日志末尾,而不是在每个查询完成时显示对应的表格。
常用选项
-h, --help
显示此帮助文本。
-J=<opt>
[高级] 为运行该命令的 JVM 提供选项。
(请注意,包含空格的选项将无法正确处理。)
-v, --verbose
逐步增加打印的进度信息数量。
-q, --quiet
逐步减少打印的进度信息数量。
--verbosity=<level>
[高级] 将详细程度显式设置为以下之一:errors、warnings、progress、progress+、progress++、progress+++。会覆盖 -v 和 -q。
--logdir=<dir>
[高级] 将详细日志写入指定目录中的一个或多个文件,文件名会包含时间戳和运行的子命令名称。
(若希望自行完全控制日志文件名,请改用 --log-to-stderr 并按需重定向 stderr。)
--common-caches=<dir>
[高级] 控制磁盘上缓存数据的位置,这些数据会在 CLI 的多次运行之间保持,例如已下载的 QL 包和已编译的查询计划。如果未显式设置,则默认使用用户主目录下名为 .codeql 的目录;如该目录不存在,则会自动创建。
自 v2.15.2 起可用。