Skip to main content

Enterprise Server 3.15 actualmente está disponible como versión candidata para lanzamiento.

exportación de diagnóstico de base de datos

[Experimental] Exporta la información de diagnóstico de una base de datos para un análisis con errores.

¿Quién puede utilizar esta característica?

CodeQL está disponible para los siguientes tipos de repositorios:

En este contenido se describe la versión más reciente de CodeQL CLI. Para obtener más información sobre esta versión, consulta https://github.com/github/codeql-cli-binaries/releases.

Para ver detalles de las opciones disponibles para este comando en una versión anterior, ejecuta el comando con la opción --help en el terminal.

Sinopsis

Shell
codeql database export-diagnostics --format=<format> [--output=<output>] <options>... -- <database>

Descripción

[Experimental] Exporta la información de diagnóstico de una base de datos para un análisis con errores.

Disponible desde la versión v2.12.6.

Opciones

Opciones principales

<database>

[Obligatorio] Ruta de acceso a la base de datos CodeQL en construcción. Debe haberse preparado para la extracción con codeql database init.

Si se proporciona la opción --db-cluster, no es una base de datos propiamente dicha, sino un directorio que contiene bases de datos y todas esas bases de datos se procesarán juntas.

--format=<format>

[Obligatorio] Formato en el que se van a escribir los resultados. Uno de los valores siguientes:

raw: lista de mensajes de diagnóstico sin procesar y no interpretados como objetos JSON.

sarif-latest: formato de intercambio de resultados de análisis estático (SARIF), un formato basado en JSON para describir los resultados del análisis estático. Esta opción de formato usa la versión admitida más reciente (v2.1.0). Esta opción no es adecuada para su uso en la automatización, ya que generará diferentes versiones de SARIF entre diferentes versiones de CodeQL.

sarifv2.1.0: SARIF v2.1.0.

text: lista de puntos de viñetas de mensajes de diagnóstico.

--[no-]db-cluster

Indica que el directorio especificado en la línea de comandos no es una base de datos propiamente dicha, sino un directorio que contiene una o varias bases de datos en construcción. Esas bases de datos se procesarán juntas.

-o, --output=<output>

Ruta de acceso de salida en la que se va a escribir información de diagnóstico.

--sarif-exit-code=<sarifExitCode>

[Solo formatos SARIF] Código de salida del proceso con errores.

--sarif-exit-code-description=<sarifExitCodeDescription>

[Solo formatos SARIF] Motivo por el que se ha cerrado el proceso con errores.

--sarif-category=<category>

[Solo formatos SARIF] [Recomendado] Especifica una categoría para este análisis que se va a incluir en la salida de SARIF. Puede usarse una categoría para distinguir análisis múltiples realizados en la misma confirmación y repositorio, pero en lenguajes diferentes o en partes diferentes del código.

Si analizas la misma versión de una base de código de varias maneras diferentes (por ejemplo, para distintos lenguajes) y cargas los resultados en GitHub para su presentación en el análisis de código, este valor debe variar entre cada uno de los análisis, lo que indica al análisis de código que los análisis se complementan en lugar de sustituirse entre sí. (Los valores deben ser coherentes entre ejecuciones del mismo análisis para diferentes versiones del código base).

Este valor aparecerá (con una barra diagonal final anexada si aún no está presente) como la propiedad <run>.automationDetails.id.

Opciones comunes

-h, --help

Muestra este texto de ayuda.

-J=<opt>

[Avanzado] Asigna la opción a la JVM que ejecuta el comando.

(Ten en cuenta que las opciones que contienen espacios no se administrarán correctamente).

-v, --verbose

Aumenta incrementalmente el número de mensajes de progreso impresos.

-q, --quiet

Reduce incrementalmente el número de mensajes de progreso impresos.

--verbosity=<level>

[Avanzado] Establece explícitamente el nivel de detalle en errores, advertencias, progreso, progreso+, progreso++, progreso+++. Invalida -v y -q.

--logdir=<dir>

[Avanzado] Escribe registros detallados en uno o varios archivos del directorio especificado, con nombres generados que incluyen marcas de tiempo y el nombre del subcomando en ejecución.

(Para escribir un archivo de registro con un nombre sobre el que tienes control total, proporciona --log-to-stderr y redirige stderr como quieras).

--common-caches=<dir>

[Avanzado] Controla la ubicación de los datos en caché del disco que se conservarán entre varias ejecuciones de la CLI, como paquetes QL descargados y planes de consulta compilada. Si no se define explícitamente, se toma como predeterminado un directorio denominado .codeql en el directorio principal del usuario, que se creará en caso de que no exista.

Disponible desde la versión v2.15.2.