Hier wird das neueste Release der CodeQL-CLI thematisiert. Weitere Informationen zu diesem Thema findest du unter https://github.com/github/codeql-cli-binaries/releases.
Um Details zu den Optionen anzuzeigen, die für diesen Befehl in früheren Releases verfügbar sind, führe den Befehl mit der Option --help
im Terminal aus.
Übersicht
codeql dataset measure --output=<file> [--threads=<num>] <options>... -- <dataset>
Beschreibung
[Plumbing] Sammelt Statistiken zu den Beziehungen in einem bestimmten Dataset.
Dieser Befehl wird in der Regel nur bei der Entwicklung eines CodeQL-Extraktors verwendet, und zwar nach einer Änderung, die das Datenbankschema betrifft und die daher eine begleitende Änderung der vom Abfrageoptimierer verwendeten Statistiken erfordert.
Primäre Optionen
<dataset>
[Obligatorisch] Pfad zum unformatierten QL-Dataset, das gemessen werden soll
-o, --output=<file>
[Obligatorisch] Die Ausgabedatei, in die die Statistiken geschrieben werden sollen, normalerweise mit der Erweiterung „.dbscheme.stats“.
-j, --threads=<num>
Die Anzahl der zu verwendenden gleichzeitigen Threads.
Der Standardwert lautet 1. Du kannst 0 übergeben, um jeweils einen Thread pro Kern auf dem Computer zu verwenden, oder -N, um N Kerne ungenutzt zu lassen. (Es wird allerdings immer noch mindestens ein Thread verwendet.)
Allgemeine Optionen
-h, --help
Zeigt diesen Hilfetext an.
-J=<opt>
[Erweitert] Dient zum Angeben einer Option für die JVM-Instanz, die den Befehl ausführt.
(Beachte, dass Optionen, die Leerzeichen enthalten, nicht ordnungsgemäß verarbeitet werden.)
-v, --verbose
Ermöglicht die inkrementelle Erhöhung der Anzahl ausgegebener Statusmeldungen.
-q, --quiet
Ermöglicht die inkrementelle Verringerung der Anzahl ausgegebener Statusmeldungen.
--verbosity=<level>
[Erweitert] Dient zum expliziten Festlegen des Ausführlichkeitsgrads auf „errors“, „warnings“, „progress“, „progress+“, „progress++“ oder „progress+++“. Überschreibt -v
und -q
:
--logdir=<dir>
[Erweitert] Ermöglicht das Schreiben detaillierter Protokolle in eine oder mehrere Dateien im angegebenen Verzeichnis mit generierten Namen, die Zeitstempel und den Namen des ausgeführten Unterbefehls enthalten.
(Um eine Protokolldatei mit einem Namen zu schreiben, über den du die volle Kontrolle hast, gib stattdessen --log-to-stderr
an, und leite stderr wie gewünscht um.)