跳到主要内容

数据集度量

[底层实现] 收集关于特定数据集关系的统计数据。

谁可以使用此功能?

CodeQL 可用于以下类型的代码库

本文内容

此内容描述了 CodeQL CLI 的最新版本。有关此版本的更多信息,请参阅 https://github.com/github/codeql-cli-binaries/releases

要在早期版本中查看此命令可用的选项详细信息,请在终端中使用 --help 选项运行该命令。

概要

Shell
codeql dataset measure --output=<file> [--threads=<num>] <options>... -- <dataset>

描述

[底层实现] 收集关于特定数据集关系的统计数据。

此命令通常仅在开发 CodeQL 提取器时使用,在影响数据库模式的更改之后,因此需要对查询优化器使用的统计信息进行相应的更改。

选项

主要选项

<dataset>

[必填] 要测量的原始 QL 数据集的路径。

-o, --output=<file>

[必填] 应将统计信息写入到的输出文件,通常使用“.dbscheme.stats”扩展名。

-j, --threads=<num>

要使用的并发线程数。

默认为 1。您可以传递 0 来为机器上的每个核心使用一个线程,或者 -N 来保留 N 个核心未使用(但仍然至少使用一个线程)。

常用选项

-h, --help

显示此帮助文本。

-J=<opt>

[高级] 向运行命令的 JVM 提供选项。

(注意,包含空格的选项将无法正确处理。)

-v, --verbose

逐步增加打印的进度消息数量。

-q, --quiet

逐步减少打印的进度消息数量。

--verbosity=<level>

[高级] 将详细程度明确设置为错误、警告、进度、进度+、进度++、进度+++ 之一。覆盖 -v-q

--logdir=<dir>

[高级] 将详细日志写入给定目录中的一个或多个文件,生成的名称包括时间戳和正在运行的子命令的名称。

(要写入名称完全受您控制的日志文件,请改用 --log-to-stderr 并按需要重定向 stderr。)

--common-caches=<dir>

[高级] 控制磁盘上缓存数据的存储位置,这些数据将在 CLI 的多次运行之间持续存在,例如下载的 QL 包和已编译的查询计划。如果未显式设置,则默认为用户主目录中名为 .codeql 的目录;如果该目录不存在,则会创建它。

v2.15.2 起可用。