Remarque
Ce contenu dĂ©crit la version la plus rĂ©cente de CodeQL CLI. Pour plus dâinformations sur cette version, consultez https://github.com/github/codeql-cli-binaries/releases.
Pour voir les dĂ©tails des options disponibles pour cette commande dans une version antĂ©rieure, exĂ©cutez la commande avec lâoption --help
dans votre terminal.
Synopsis
codeql execute query-server2 [--threads=<num>] <options>...
codeql execute query-server2 [--threads=<num>] <options>...
Description
[Plomberie] Prend en charge lâexĂ©cution de requĂȘtes dans des IDE.
Cette commande sâapplique uniquement aux auteurs dâextensions du langage QL pour les IDE. Elle est dĂ©marrĂ©e par le plug-in IDE en arriĂšre-plan et communique avec lui via un protocole spĂ©cial sur ses flux dâentrĂ©e et de sortie standard.
Disponible depuis v2.10.11
.
Options
Options principales
--[no-]tuple-counting
[AvancĂ©] Affiche le nombre de tuples pour chaque Ă©tape dâĂ©valuation dans les journaux de lâĂ©valuateur de requĂȘte. Si lâoption --evaluator-log
est fournie, les nombres de tuples sont inclus dans les journaux JSON textuels et structurĂ©s gĂ©nĂ©rĂ©s par la commande. (Cela peut ĂȘtre utile pour lâoptimisation des performances du code QL complexe.)
--timeout=<seconds>
[AvancĂ©] DĂ©finit la durĂ©e du dĂ©lai dâexpiration pour lâĂ©valuation de la requĂȘte, en secondes.
La fonctionnalitĂ© de dĂ©lai dâexpiration est destinĂ©e Ă intercepter les cas oĂč lâĂ©valuation dâune requĂȘte complexe durerait « indĂ©finiment ». Il ne sâagit pas dâun moyen efficace de limiter la durĂ©e totale de lâĂ©valuation de la requĂȘte. LâĂ©valuation est autorisĂ©e Ă se poursuivre tant que chaque partie du calcul se termine dans le dĂ©lai dâexpiration qui lui a Ă©tĂ© imparti sĂ©parĂ©ment. Pour lâinstant, ces parties sont des « couches RA » de la requĂȘte optimisĂ©e, mais cela peut changer.
Si aucun dĂ©lai dâexpiration nâest spĂ©cifiĂ© ou que 0 est fourni, aucun dĂ©lai nâest dĂ©fini (sauf pour codeql test run, oĂč le dĂ©lai dâexpiration par dĂ©faut est de 5 minutes).
-j, --threads=<num>
Utilise le nombre de threads spĂ©cifiĂ© pour Ă©valuer les requĂȘtes.
La valeur par dĂ©faut est de 1. Vous pouvez passer 0 pour utiliser un thread par cĆur sur la machine ou -N pour laisser N cĆurs inutilisĂ©s (sauf si au moins un thread est toujours utilisĂ©).
--[no-]save-cache
[AvancĂ©] Ăcrit de maniĂšre agressive des rĂ©sultats intermĂ©diaires dans le cache de disque. Cela prend plus de temps et utilise (beaucoup) plus dâespace disque, mais peut accĂ©lĂ©rer lâexĂ©cution ultĂ©rieure de requĂȘtes similaires.
--[no-]expect-discarded-cache
[AvancĂ©] Prend des dĂ©cisions sur les prĂ©dicats Ă Ă©valuer et sur ce quâil faut Ă©crire dans le cache de disque, en supposant que le cache soit ignorĂ© une fois les requĂȘtes exĂ©cutĂ©es.
--[no-]keep-full-cache
[AvancĂ©] Ne nettoie pas le cache de disque une fois lâĂ©valuation terminĂ©e. Cela peut faire gagner du temps si vous ĂȘtes amenĂ© Ă exĂ©cuter codeql dataset cleanup ou codeql database cleanup par la suite.
--max-disk-cache=<MB>
DĂ©finit la quantitĂ© maximale dâespace que le cache de disque peut utiliser pour les rĂ©sultats de requĂȘte intermĂ©diaires.
Si cette taille nâest pas configurĂ©e explicitement, lâĂ©valuateur essaie dâutiliser une quantitĂ© « raisonnable » dâespace de cache en fonction de la taille du jeu de donnĂ©es et de la complexitĂ© des requĂȘtes. La dĂ©finition explicite dâune limite supĂ©rieure Ă cette utilisation par dĂ©faut permet une mise en cache supplĂ©mentaire qui peut accĂ©lĂ©rer les requĂȘtes ultĂ©rieures.
--min-disk-free=<MB>
[AvancĂ©] DĂ©finit la quantitĂ© cible dâespace disponible sur le systĂšme de fichiers.
Si --max-disk-cache
nâest pas donnĂ©, lâĂ©valuateur sâefforce de limiter lâutilisation du cache de disque si lâespace disponible sur le systĂšme de fichiers passe en dessous de cette valeur.
--min-disk-free-pct=<pct>
[AvancĂ©] DĂ©finit la fraction cible dâespace disponible sur le systĂšme de fichiers.
Si --max-disk-cache
nâest pas donnĂ©, lâĂ©valuateur sâefforce de limiter lâutilisation du cache de disque si lâespace disponible sur le systĂšme de fichiers passe en dessous de ce pourcentage.
--external=<pred>=<file.csv>
Fichier CSV qui contient des lignes pour le prédicat <pred> externe.
Vous pouvez fournir plusieurs options --external
.
--xterm-progress=<mode>
[AvancĂ©] ContrĂŽle sâil faut afficher le suivi de la progression pendant lâĂ©valuation du code QL avec des sĂ©quences de contrĂŽle xterm. Les valeurs possibles sont les suivantes :
no
: ne produit jamais de progression fantaisiste ; suppose quâil sâagit dâun terminal idiot.
auto
(par dĂ©faut) : dĂ©termine automatiquement si la commande sâexĂ©cute dans un terminal appropriĂ©.
yes
: suppose que le terminal peut comprendre les sĂ©quences de contrĂŽle xterm. La fonctionnalitĂ© dĂ©pend toujours de la capacitĂ© Ă dĂ©tecter automatiquement la taille du terminal (ce qui nâest pas implĂ©mentĂ© sous Windows, dĂ©solĂ©), et sera Ă©galement dĂ©sactivĂ©e si -q
est spécifié.
25x80
(ou similaire) : comme yes
, et donne aussi explicitement la taille du terminal. (Contrairement Ă yes
, cela devrait fonctionner sous Windows.)
25x80:/dev/pts/17
(ou similaire) : affiche une progression fantaisiste sur un terminal différent de stderr. Principalement utile pour les tests internes.
--search-path=<dir>[:<dir>...]
Fonctionne comme lâoption similaire de codeql query compile (q.v.).
Il nâexiste aucune option --additional-packs
ou --library-path
, car les valeurs correspondantes sont fournies par requĂȘte
(Remarque : Sur Windows, le séparateur de chemin est ;
.)
Options pour contrĂŽler la sortie des journaux structurĂ©s de lâĂ©valuateur
--evaluator-log=<file>
[AvancĂ©] GĂ©nĂšre des journaux structurĂ©s sur les performances de lâĂ©valuateur dans le fichier donnĂ©. Le format de ce fichier journal est susceptible dâĂȘtre modifiĂ© sans prĂ©avis, mais il sâagit dâun flux dâobjets JSON sĂ©parĂ©s par deux caractĂšres de nouvelle ligne (par dĂ©faut) ou un seul si lâoption --evaluator-log-minify
est transmise. Utilisez codeql generate log-summary <file>
pour produire un rĂ©sumĂ© plus stable de ce fichier et Ă©vitez dâanalyser le fichier directement. Le fichier est remplacĂ©, sâil existe dĂ©jĂ .
--evaluator-log-minify
[AvancĂ©] Si lâoption --evaluator-log
est transmise, le passage de cette option rĂ©duit Ă©galement la taille du journal JSON produit, mais celui-ci devient beaucoup moins lisible par les ĂȘtres humains en contrepartie.
Options courantes
-h, --help
Affiche ce texte dâaide.
-J=<opt>
[AvancĂ©] Donne une option Ă lâenvironnement JVM exĂ©cutant la commande.
(Attention, les options contenant des espaces ne sont pas gérées correctement.)
-v, --verbose
Augmente de façon incrémentielle le nombre de messages de progression affichés.
-q, --quiet
Diminue de façon incrémentielle le nombre de messages de progression affichés.
--verbosity=<level>
[Avancé] Définit explicitement le niveau de détail sur errors, warnings, progress, progress+, progress++ ou progress+++. Remplace -v
et -q
.
--logdir=<dir>
[AvancĂ©] Ăcrit des journaux dĂ©taillĂ©s dans un ou plusieurs fichiers du rĂ©pertoire donnĂ©, avec des noms gĂ©nĂ©rĂ©s qui incluent des horodatages et le nom de la sous-commande en cours dâexĂ©cution.
(Pour écrire un fichier journal avec un nom sur lequel vous avez un contrÎle total, donnez plutÎt --log-to-stderr
et redirigez stderr comme vous le souhaitez.)
--common-caches=<dir>
[AvancĂ©] ContrĂŽle lâemplacement des donnĂ©es en cache sur le disque qui persisteront entre plusieurs exĂ©cutions de lâinterface CLI, telles que les packs QL tĂ©lĂ©chargĂ©s et les plans de requĂȘte compilĂ©s. Sâil nâest pas dĂ©fini explicitement, il sâagit par dĂ©faut dâun rĂ©pertoire nommĂ© .codeql
dans le rĂ©pertoire de base de lâutilisateur. Sâil nâexiste pas dĂ©jĂ , il est créé.
Disponible depuis v2.15.2
.