{"meta":{"title":"команда trace-command базы данных","intro":"[Сантехника] Выполните одну команду в рамках трассировки сборки.","product":"Безопасность и качество кода","breadcrumbs":[{"href":"/ru/code-security","title":"Безопасность и качество кода"},{"href":"/ru/code-security/reference","title":"Reference"},{"href":"/ru/code-security/reference/code-scanning","title":"Проверка кода"},{"href":"/ru/code-security/reference/code-scanning/codeql","title":"CodeQL"},{"href":"/ru/code-security/reference/code-scanning/codeql/codeql-cli-manual","title":"Руководство по cli CodeQL"},{"href":"/ru/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-trace-command","title":"команда trace-command базы данных"}],"documentType":"article"},"body":"# команда trace-command базы данных\n\n\\[Сантехника] Выполните одну команду в рамках трассировки сборки.\n\n> \\[!NOTE]\n> Это содержимое описывает последний выпуск данных CodeQL CLI. Дополнительные сведения об этом выпуске см. в статье <https://github.com/github/codeql-cli-binaries/releases>.\n>\n> Чтобы просмотреть сведения о параметрах, доступных для этой команды в предыдущем выпуске, выполните команду с <span style=\"white-space: nowrap;\">`--help`</span> параметром в терминале.\n\n## Synopsis\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          \\[Сантехника] Выполните одну команду в рамках трассировки сборки.\n```\n\nПри этом выполняется отдельная командная строка под трассировщиком, поэтому может выполняться некоторое извлечение, но не завершает полученную базу данных CodeQL.\n\n## Options\n\n### Основные параметры\n\n#### `<database>`\n\n```\n          \\[Обязательный] Путь к базе данных CodeQL в стадии разработки. Это должно быть подготовлено для извлечения с помощью [инициализации](/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-init) базы данных codeql.\n\n          `--db-cluster` Если этот параметр задан, это не сама база данных, а каталог, _содержащий_ базы данных, и все эти базы данных будут обрабатываться вместе.\n```\n\n#### `<command>...`\n\nВыполняемая команда Это может состоять из одного или нескольких аргументов, которые используются для создания процесса. Перед перечислением аргументов команды рекомендуется передать аргумент --, чтобы избежать путаницы между аргументами и нашими аргументами.\n\nОжидается, что команда завершится с кодом состояния 0. Любой другой код выхода интерпретируется как сбой.\n\nКоманда может быть опущена при `--index-traceless-dbs` указании.\n\n#### `-j, --threads=<num>`\n\nПопросите средства извлечения использовать это множество потоков. Этот параметр передается в средство извлечения в качестве предложения. Если задана переменная среды CODEQL\\_THREADS, значение переменной среды имеет приоритет над этим параметром.\n\nВы можете передать 0 для использования одного потока на ядро на компьютере или -*N, чтобы оставить *неиспользуемые* ядра N* (за исключением того, что по-прежнему используется хотя бы один поток).\n\n#### `-M, --ram=<MB>`\n\nПопросите средство извлечения использовать эту большую память. Этот параметр передается в средство извлечения в качестве предложения. Если задана переменная среды ОЗУ CODEQL\\_, значение переменной среды имеет приоритет над этим параметром.\n\n#### `--[no-]db-cluster`\n\nУказывает, что каталог, указанный в командной строке, не является самой базой данных, а каталогом, *который содержит* одну или несколько баз данных в стадии создания. Эти базы данных будут обрабатываться вместе.\n\n#### `--no-tracing`\n\n```\n          \\[Дополнительно] Не отслеживайте указанную команду, вместо этого используйте ее для создания всех необходимых данных напрямую.\n```\n\n#### `--extra-tracing-config=<tracing-config.lua>`\n\n```\n          \\[Дополнительно] Путь к файлу конфигурации трассировки. Его можно использовать для изменения поведения трассировщика сборки. Его можно использовать для выбора процессов компилятора, которые выполняются в рамках команды сборки, и активировать выполнение других средств. Средства извлечения предоставляют файлы конфигурации трассировщика по умолчанию, которые должны работать в большинстве случаев.\n```\n\n#### `--[no-]index-traceless-dbs`\n\nПомимо указанной команды запустите основной скрипт для извлекателей, которые не зависят от трассировки процесса сборки. Если вы создаете базы данных для нескольких языков, `--db-cluster`этот параметр должен быть предоставлен ровно одному вызову команды trace-database codeql.\n\n#### `--[no-]use-build-mode`\n\nОпределите, что нужно выполнить на основе режима сборки базы данных. Этот параметр нельзя использовать в сочетании с `--index-traceless-dbs`.\n\n#### `--working-dir=<dir>`\n\n```\n          \\[Дополнительно] Каталог, в котором должна выполняться указанная команда. Если этот аргумент не указан, команда выполняется в значении, переданном `--source-root`[в создание](/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-create) базы данных codeql, если она существует. Если аргумент не `--source-root` указан, команда выполняется в текущем рабочем каталоге.\n```\n\n#### `--no-run-unnecessary-builds`\n\n```\n          \\[Дополнительно] Выполните только указанные команды сборки, если в базе данных в процессе сборки используется средство извлечения, зависящее от трассировки процесса сборки.\n```\n\nЕсли этот параметр не задан, команда будет выполнена даже в том случае, если CodeQL не нужен, предположим, что вам нужны побочные эффекты по другим причинам.\n\n### Параметры управления поведением средства извлечения\n\n#### `-O, --extractor-option=<extractor-option-name=value>`\n\nЗадайте параметры для средств извлечения CodeQL.\n`extractor-option-name` должен иметь имя средства извлечения\\_формы name.group1.group2.option\\_или имя group1.group2.option\\_. Если `extractor_option_name` начинается с имени средства извлечения, указанный метод извлечения должен объявить имя option group1.group2.option\\_. В противном случае любой средство извлечения, объявляющее имя option group1.group2.option\\_, будет иметь набор параметров.\n`value` может быть любой строкой, которая не содержит новую строку.\n\nЭтот параметр командной строки можно использовать многократно для задания нескольких параметров извлечения. Если вы предоставляете несколько значений для одного и того же параметра извлечения, поведение зависит от типа, который ожидает параметр средства извлечения. Строковые параметры будут использовать последнее указанное значение. Параметры массива будут использовать все предоставленные значения в порядке. Параметры средства извлечения, указанные с помощью этого параметра командной строки, обрабатываются после использования `--extractor-options-file`параметров средства извлечения.\n\nПри передаче [в базу данных codeql инициализации](/ru/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-init) или `codeql database begin-tracing`параметры будут применяться только к среде косвенной трассировки. Если рабочий процесс также вызывает команду трассировки базы данных codeql, то при желании также необходимо передать параметры.\n\nДополнительные <https://codeql.github.com/docs/codeql-cli/extractor-options> сведения о параметрах средства извлечения CodeQL, включая перечисление параметров, объявленных каждым извлекателем.\n\n#### `--extractor-options-file=<extractor-options-bundle-file>`\n\nУкажите файлы пакета параметров извлечения. Файл пакета параметров извлечения — это JSON-файл (расширение) или YAML-файл (расширение `.json``.yaml` или`.yml`), который задает параметры средства извлечения. Файл должен иметь ключ карты верхнего уровня \"extractor\" и, под ним, имена средств извлечения в качестве ключей карты второго уровня. Дополнительные уровни карт представляют вложенные группы средств извлечения, а параметры строки и массива — это записи сопоставления со значениями строк и массивов.\n\nФайлы пакета параметров извлечения считываются в указанном порядке.\nЕсли разные файлы пакета параметров извлечения указывают один и тот же параметр извлечения, поведение зависит от типа, который ожидает параметр средства извлечения. Строковые параметры будут использовать последнее указанное значение. Параметры массива будут использовать все предоставленные значения в порядке. Параметры средства извлечения, указанные с помощью этого параметра командной строки, обрабатываются перед использованием `--extractor-option`параметров средства извлечения.\n\nПри передаче [в базу данных codeql инициализации](/ru/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-init) или `codeql database begin-tracing`параметры будут применяться только к среде косвенной трассировки. Если рабочий процесс также вызывает команду трассировки базы данных codeql, то при желании также необходимо передать параметры.\n\nДополнительные <https://codeql.github.com/docs/codeql-cli/extractor-options> сведения о параметрах средства извлечения CodeQL, включая перечисление параметров, объявленных каждым извлекателем.\n\n### Распространенные параметры\n\n#### `-h, --help`\n\nОтображение этого текста справки.\n\n#### `-J=<opt>`\n\n```\n          \\[Дополнительно] Укажите параметр JVM, выполняя команду.\n```\n\n(Убедитесь, что параметры, содержащие пробелы, не будут обрабатываться правильно.)\n\n#### `-v, --verbose`\n\nПостепенно увеличьте число отображаемых сообщений о ходе выполнения.\n\n#### `-q, --quiet`\n\nПостепенно уменьшайте количество отображаемых сообщений о ходе выполнения.\n\n#### `--verbosity=<level>`\n\n```\n          \\[Дополнительно] Явным образом задайте уровень детализации на одну из ошибок, предупреждений, хода выполнения, хода выполнения+, хода выполнения++, хода выполнения+++. Переопределяет `-v` и `-q`.\n```\n\n#### `--logdir=<dir>`\n\n```\n          \\[Дополнительно] Запись подробных журналов в один или несколько файлов в указанном каталоге с созданными именами, включающими метки времени и имя выполняющегося подкоманда.\n```\n\n(Чтобы записать файл журнала с именем, над которым у вас есть полный контроль, вместо этого предоставьте `--log-to-stderr` и перенаправите stderr по мере необходимости.)\n\n#### `--common-caches=<dir>`\n\n```\n          \\[Дополнительно] Управляет расположением кэшированных данных на диске, которые будут сохраняться между несколькими запусками интерфейса командной строки, такими как скачанные пакеты QL и скомпилированные планы запросов. Если этот параметр не задан явным образом, по умолчанию используется каталог с именем `.codeql` в домашнем каталоге пользователя; он будет создан, если он еще не существует.\n```\n\nДоступно с момента `v2.15.2`."}