{"meta":{"title":"Datenbankablaufverfolgungsbefehl","intro":"[Plumbing] Führt einen einzelnen Befehl als Teil eines überwachten Builds aus.","product":"Sicherheit und Codequalität","breadcrumbs":[{"href":"/de/code-security","title":"Sicherheit und Codequalität"},{"href":"/de/code-security/reference","title":"Reference"},{"href":"/de/code-security/reference/code-scanning","title":"Codeüberprüfung"},{"href":"/de/code-security/reference/code-scanning/codeql","title":"CodeQL"},{"href":"/de/code-security/reference/code-scanning/codeql/codeql-cli-manual","title":"CodeQL CLI-Leitfaden"},{"href":"/de/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-trace-command","title":"Datenbankablaufverfolgungsbefehl"}],"documentType":"article"},"body":"# Datenbankablaufverfolgungsbefehl\n\n\\[Plumbing] Führt einen einzelnen Befehl als Teil eines überwachten Builds aus.\n\n## Zusammenfassung\n\n```shell copy\ncodeql database trace-command [--threads=<num>] [--ram=<MB>] [--extractor-option=<extractor-option-name=value>] <options>... -- <database> <command>...\n```\n\n## Description\n\n```\n          \\[Plumbing] Führt einen einzelnen Befehl als Teil eines überwachten Builds aus.\n```\n\nDadurch wird eine einzelne angegebene Befehlszeile mit Ablaufverfolgung ausgeführt, wodurch möglicherweise eine Extraktion ausgeführt, aber die resultierende CodeQL-Datenbank nicht finalisiert wird.\n\n## Options\n\n### Primäre Optionen\n\n#### `<database>`\n\n```\n          \\[Erforderlich] Pfad zu der im Aufbau befindlichen CodeQL-Datenbank. Dieser muss für die Extraktion mit [codeql database init](/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-init) vorbereitet sein.\n```\n\nWenn die Option `--db-cluster` angegeben ist, handelt es sich nicht um eine Datenbank als solches, sondern um ein Verzeichnis, das Datenbanken *enthält*. Es werden dann alle diese Datenbanken zusammen verarbeitet.\n\n#### `<command>...`\n\nDer auszuführende Befehl. Es sind ein einzelnes oder mehrere Argumente möglich, die zum Erstellen des Prozesses verwendet werden. Es wird empfohlen, das Argument „--“ vor dem Auflisten der Argumente des Befehls zu übergeben, um Verwechslungen zwischen den Argumenten und unseren zu vermeiden.\n\nEs wird erwartet, dass der Befehl mit dem Statuscode 0 beendet wird. Jeder andere Exitcode wird als Fehler interpretiert.\n\nDer Befehl kann ausgelassen werden, wenn `--index-traceless-dbs` angegeben wird.\n\n#### `-j, --threads=<num>`\n\nDient zum Festlegen der Anzahl von Threads, die der Extraktor verwenden soll. Diese Option wird als Vorschlag an den Extraktor übergeben. Wenn die Umgebungsvariable „CODEQL\\_THREADS“ festgelegt wird, hat der Wert der Umgebungsvariablen Vorrang vor dieser Option.\n\nDu 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.)\n\n#### `-M, --ram=<MB>`\n\nDient zum Festlegen der Arbeitsspeichermenge, die der Extraktor verwenden soll. Diese Option wird als Vorschlag an den Extraktor übergeben. Wenn die Umgebungsvariable „CODEQL\\_RAM“ festgelegt wird, hat der Wert der Umgebungsvariablen Vorrang vor dieser Option.\n\n#### `--[no-]db-cluster`\n\nGibt an, dass es sich bei dem in der Befehlszeile angegebenen Verzeichnis nicht um eine Datenbank als solches handelt, sondern um ein Verzeichnis, das eine oder mehrere Datenbanken *enthält*, die sich im Aufbau befinden. Diese Datenbanken werden zusammen verarbeitet.\n\n#### `--no-tracing`\n\n```\n          \\[Erweitert] Verfolge das angegebene Kommando nicht, sondern verlasse dich darauf, dass es alle notwendigen Daten direkt erzeugt.\n```\n\n#### `--extra-tracing-config=<tracing-config.lua>`\n\n```\n          \\[Erweitert] Der Pfad zu einer Tracer-Konfigurationsdatei. Er kann verwendet werden, um das Verhalten der Buildablaufverfolgung zu ändern. Er kann verwendet werden, um Compilerprozesse zu ermitteln, die als Teil des Buildbefehls ausgeführt werden, und um die Ausführung anderer Tools auszulösen. Die Extraktoren stellen standardmäßige Konfigurationsdateien für die Ablaufverfolgung bereit, die in den meisten Situationen funktionieren sollten.\n```\n\n#### `--[no-]index-traceless-dbs`\n\nFühre zusätzlich zum angegebenen Befehl das Standardskript für Extraktoren aus, die nicht von der Ablaufverfolgung eines Buildprozesses abhängen. Wenn du mit `--db-cluster` Datenbanken für mehrere Sprachen erstellst, sollte diese Option genau einem Aufruf von „codeql database trace-command“ zugewiesen werden.\n\n#### `--[no-]use-build-mode`\n\nErmitteln Sie, was basierend auf dem Buildmodus der Datenbank ausgeführt werden soll. Diese Option kann nicht in Verbindung mit `--index-traceless-dbs` verwendet werden.\n\n#### `--working-dir=<dir>`\n\n```\n          \\[Erweitert] Das Verzeichnis, in dem der angegebene Befehl ausgeführt werden soll. Ohne Angabe dieses Arguments wird der Befehl in dem Wert von `--source-root` ausgeführt, der an [codeql database create](/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-create) übergeben wird (sofern vorhanden). Ohne Angabe des Arguments `--source-root` wird der Befehl im aktuellen Arbeitsverzeichnis ausgeführt.\n```\n\n#### `--no-run-unnecessary-builds`\n\n```\n          \\[Erweitert] Führen Sie den/die angegebenen Build-Befehl(e) nur aus, wenn eine im Aufbau befindliche Datenbank einen Extraktor verwendet, der vom Tracing eines Build-Prozesses abhängig ist.\n```\n\nWenn diese Option nicht angegeben wurde, wird der Befehl auch dann ausgeführt, wenn CodeQL ihn nicht benötigt, da davon ausgegangen wird, dass du die Nebenwirkungen aus anderen Gründen benötigst.\n\n### Optionen zum Steuern des Extraktorverhaltens\n\n#### `-O, --extractor-option=<extractor-option-name=value>`\n\nLegt Optionen für CodeQL-Extraktoren fest.\n`extractor-option-name` sollte die Form extractor\\_name.group1.group2.option\\_name oder group1.group2.option\\_name haben. Wenn `extractor_option_name` mit einem Extraktornamen beginnt, muss der angegebene Extraktor die Option group1.group2.option\\_name deklarieren. Andernfalls wird in jedem Extraktor, der die Option group1.group2.option\\_name deklariert, die Option festgelegt.\n`value` kann eine beliebige Zeichenfolge sein, die keinen Zeilenumbruch enthält.\n\nDiese Befehlszeilenoption kann wiederholt verwendet werden, um mehrere Extraktoroptionen festzulegen. Wenn du mehrere Werte für die gleiche Extraktoroption angibst, hängt das Verhalten von dem Typ ab, den die Extraktoroption erwartet. Bei Zeichenfolgenoptionen wird der zuletzt angegebene Wert verwendet. Bei Arrayoptionen werden alle angegebenen Werte der Reihe nach verwendet. Mit dieser Befehlszeilenoption angegebene Extraktoroptionen werden nach Extraktoroptionen verarbeitet, die über `--extractor-options-file` angegeben wurden.\n\nBei Übergabe an [codeql database init](/de/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-init) oder `codeql database begin-tracing` werden die Optionen nur auf die indirekte Ablaufverfolgungsumgebung angewendet. Wenn dein Workflow auch Aufrufe an codeql database trace-command sendet, müssen die Optionen auch dorthin übergeben werden, falls gewünscht.\n\nWeitere Informationen zu CodeQL-Extraktoroptionen finden Sie unter <https://codeql.github.com/docs/codeql-cli/extractor-options>. Dort erfahren Sie unter anderem, wie du die von den einzelnen Extraktoren deklarierten Optionen auflisten kannst.\n\n#### `--extractor-options-file=<extractor-options-bundle-file>`\n\nDient zum Angeben von Paketdateien für Extraktoroptionen. Eine Paketdatei für Extraktoroptionen ist eine JSON-Datei (Erweiterung `.json`) oder eine YAML-Datei (Erweiterung `.yaml` oder `.yml`), die Extraktoroptionen festlegt. Die Datei muss über den Zuordnungsschlüssel „Extraktor“ der obersten Ebene und darunter über Extraktornamen als Zuordnungsschlüssel der zweiten Ebene verfügen. Weitere Zuordnungsebenen stellen geschachtelte Extraktorgruppen dar, und Zeichenfolgen- und Arrayoptionen sind Zuordnungseinträge mit Zeichenfolgen- und Arraywerten.\n\nPaketdateien für Extraktoroptionen werden in der angegebenen Reihenfolge gelesen.\nWenn verschiedene Paketdateien für Extraktoroptionen die gleiche Extraktoroption angeben, hängt das Verhalten von dem Typ ab, den die Extraktoroption erwartet. Bei Zeichenfolgenoptionen wird der zuletzt angegebene Wert verwendet. Bei Arrayoptionen werden alle angegebenen Werte der Reihe nach verwendet. Mit dieser Befehlszeilenoption angegebene Extraktoroptionen werden vor Extraktoroptionen verarbeitet, die über `--extractor-option` angegeben wurden.\n\nBei Übergabe an [codeql database init](/de/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-init) oder `codeql database begin-tracing` werden die Optionen nur auf die indirekte Ablaufverfolgungsumgebung angewendet. Wenn dein Workflow auch Aufrufe an codeql database trace-command sendet, müssen die Optionen auch dorthin übergeben werden, falls gewünscht.\n\nWeitere Informationen zu CodeQL-Extraktoroptionen finden Sie unter <https://codeql.github.com/docs/codeql-cli/extractor-options>. Dort erfahren Sie unter anderem, wie du die von den einzelnen Extraktoren deklarierten Optionen auflisten kannst.\n\n### Allgemeine Optionen\n\n#### `-h, --help`\n\nZeigt diesen Hilfetext an.\n\n#### `-J=<opt>`\n\n```\n          \\[Erweitert] Dient zum Angeben einer Option für die JVM-Instanz, die den Befehl ausführt.\n```\n\n(Beachte, dass Optionen, die Leerzeichen enthalten, nicht ordnungsgemäß verarbeitet werden.)\n\n#### `-v, --verbose`\n\nErmöglicht die inkrementelle Erhöhung der Anzahl ausgegebener Statusmeldungen.\n\n#### `-q, --quiet`\n\nErmöglicht die inkrementelle Verringerung der Anzahl ausgegebener Statusmeldungen.\n\n#### `--verbosity=<level>`\n\n```\n          \\[Erweitert] Dient zum expliziten Festlegen des Ausführlichkeitsgrads auf „errors“, „warnings“, „progress“, „progress+“, „progress++“ oder „progress+++“. Überschreibt `-v` und `-q`:\n```\n\n#### `--logdir=<dir>`\n\n```\n          \\[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.\n```\n\n(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.)\n\n#### `--common-caches=<dir>`\n\n```\n          \\[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.\n```\n\nVerfügbar seit `v2.15.2`."}