Skip to main content

generate log-summary

[Erweitert] Erstellt eine Zusammenfassung einer strukturierten Protokolldatei.

Wer kann dieses Feature verwenden?

GitHub CodeQL wird nach der Installation auf Benutzerbasis lizenziert. Du kannst CodeQL nur für bestimmte Aufgaben unter den Lizenzeinschränkungen verwenden. Weitere Informationen findest du unter Informationen zur CodeQL-CLI.

Wenn du über eine GitHub Advanced Security-Lizenz verfügst, kannst du CodeQL für eine automatisierte Analyse sowie für Continuous Integration und Continuous Delivery verwenden. Weitere Informationen findest du unter Informationen zu GitHub Advanced Security.

In diesem Inhalt wird die neueste Version von CodeQL CLI beschrieben. 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

Shell
codeql generate log-summary <options>... -- <input> <result>

Beschreibung

[Erweitert] Erstellt eine Zusammenfassung einer strukturierten Protokolldatei.

Mit diesem Befehl wird eine Zusammenfassung eines strukturierten JSON-Auswertungsereignisprotokolls erstellt. Die Ausgabe dieses Befehls soll in verschiedenen Versionen der CLI stabiler sein als die Protokolldateien selbst. Bei der Implementierung eines Skripts, das Ausgaben aus den Protokollen verwendet, wird daher dringend empfohlen, diesen Befehl auszuführen und seine Ausgaben zu verwenden, anstatt direkt die Ereignisprotokolle zu nutzen.

Optionen

Primäre Optionen

<input>

[Obligatorisch] Pfad zur Ereignisprotokolldatei, von der eine Zusammenfassung erstellt werden soll.

<result>

Pfad zum Speicherort, an den die zusammengefasste Protokolldatei ausgegeben werden soll. Wenn dies ausgelassen wird, wird die Zusammenfassung an stdout ausgegeben.

--minify-output

Lass gegebenenfalls Leerzeichen in der ausgegebenen Zusammenfassung weg. Das Ergebnis ist für Menschen schwieriger zu lesen, nimmt aber weniger Arbeitsspeicher in Anspruch. Diese Option wirkt sich nur auf einige Ausgabeformate aus.

--utc

[Erweitert] Bestimmte Zeitstempel in den von diesem Befehl erstellten Zusammenfassungen können die lokale Zeitzone des Rechners verwenden, auf dem sie ausgeführt werden. Wenn du dieses Flag aktivierst, müssen alle Zeitstempel UTC sein.

--format=<format>

Lege das Format der erzeugten Ausgabe fest.

predicates (Standard) : Erstellt eine Zusammenfassung der für jedes Prädikat durchgeführten Berechnungen. Hierbei handelt es sich um einen Stream von JSON-Objekten, die entweder durch zwei Zeilenumbrüche (standardmäßig) oder durch einen, wenn die Option --minify-output übergeben wird, getrennt sind.

text: Erstellt eine für den Menschen lesbare Zusammenfassung der Auswertungsausführung.

overall: Erstellt eine JSON-Datei, die einige allgemeine Informationen über die Auswertung enthält, einschließlich einiger zusammenfassender Statistiken und Informationen zu den zeitaufwändigsten Auswertungen, die durchgeführt wurden.

--[no-]deduplicate-stage-summaries

[Erweitert] Diese Option funktioniert nur in Verbindung mit dem Textformat. Wenn diese Option aktiviert ist, werden die Zusammenfassungstabellen, die die teuersten Prädikate enthalten, für Abschnitte, die von mehreren Abfragen genutzt werden, nicht wiederholt. Dies hat den Nebeneffekt, dass alle Zusammenfassungstabellen an das Ende des Protokolls verschoben werden, anstatt dass die Tabellen für jede Abfrage an dem Punkt angezeigt werden, an dem diese Abfrage beendet wurde.

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.)

--common-caches=<dir>

[Erweitert] Steuert den Speicherort zwischengespeicherter Daten auf dem Datenträger, der zwischen mehreren Ausführungsvorgängen der CLI beibehalten wird, z. B. heruntergeladene QL-Pakete und kompilierte Abfragepläne. Wenn dies nicht explizit festgelegt ist, wird dieses Verzeichnis standardmäßig auf ein Verzeichnis mit dem Namen .codeql festgelegt, das sich im Startverzeichnis des Benutzer. Es wird erstellt, wenn es noch nicht vorhanden ist.

Verfügbar seit v2.15.2.