Skip to main content

Configurações personalizadas

Você pode editar as configurações da extensão do CodeQL para Visual Studio Code para atender às suas necessidades.

Sobre as configurações na extensão do CodeQL para Visual Studio Code

Você pode alterar várias configurações para a extensão do CodeQL para Visual Studio Code, incluindo:

  • Qual versão da CodeQL CLI a extensão usa.
  • Como a extensão exibe consultas anteriores.
  • Como a extensão executa consultas.

Editar configurações

  1. Abra o modo de exibição "Extensões" e clique com o botão direito do mouse em CodeQL e, em seguida, clique em Definições de Extensão.

    Captura de tela do modo de exibição "Extensões" com o menu do botão direito do mouse exibido e "Configurações de extensão" destacado em laranja escuro.

  2. Na janela Configurações, edite as configurações conforme desejado. As novas configurações são salvas automaticamente.

    Captura de tela da janela das configurações da extensão do CodeQL para VS Code exibida dentro do VS Code.

Observação: como alternativa, você pode editar as configurações no formato JSON abrindo o VS Code Command Palette e selecionando Preferências: Abrir Configurações do Usuário (JSON).

Escolher uma versão da CodeQL CLI

Para substituir o comportamento padrão e usar uma versão específica da CodeQL CLI, você pode especificar o "Caminho executável" da CodeQL CLI nas configurações de extensão e apontá-lo para sua cópia existente da CodeQL CLI. Ou seja, o arquivo denominado codeql (Linux e macOS), ou codeql.exe (Windows). Para obter mais informações sobre o comportamento padrão, confira "Configurar o acesso à CLI do CodeQL".

Alterar os rótulos dos itens do histórico de consultas

A configuração "Formatar" do histórico de consultas controla como a extensão lista consultas no histórico de consultas. Por padrão, cada item tem um rótulo com o seguinte formato:

QUERY-NAME on DATABASE-NAME - QUERY-STATUS NUMBER-OF-RESULTS [QUERY-RUNTIME]

Para substituir o rótulo padrão, você pode especificar um formato diferente para os itens do histórico de consultas.

Alterar o período de retenção para itens do histórico de consultas

Por padrão, os itens no modo de exibição "Histórico de Consultas" são retidos por 30 dias. Você pode definir uma vida útil (TTL) diferente alterando a configuração de "Histórico de Consultas: Ttl". Para reter itens indefinidamente, defina o valor como 0.

Definir configurações para executar consultas localmente

Há várias configurações em "Consultas em Execução". Por exemplo, se as consultas forem executadas muito lentamente e atingirem o tempo limite com frequência, convém aumentar a memória alterando a configuração de "Consultas em Execução: Memória".

Se você quiser examinar o desempenho da consulta, habilite a configuração "Consultas em Execução: Depurar" para incluir contagens de tempo e tuplas. Isso será mostrado nos logs na guia "Servidor de Consulta" do CodeQL do modo de exibição "Saída". A contagem de tuplas é útil porque indica o tamanho dos predicados computados pela consulta.

Para salvar logs do servidor de consulta em um local personalizado, edite a configuração "Consultas em Execução: Diretório de Logs Personalizado". Se você usar um diretório de logs personalizado, a extensão salvará os logs permanentemente, em vez de excluí-los automaticamente após cada sessão de espaço de trabalho. Isso é útil quando você quer investigar esses logs para melhorar o desempenho de suas consultas.

Definir configurações para análise de variantes

Você também pode editar os itens mostrados no modo de exibição "Repositórios de Análise de Variantes" editando um arquivo em seu espaço de trabalho Visual Studio Code denominado databases.json. Esse arquivo contém uma representação JSON de todos os itens exibidos no modo de exibição. Para abrir o arquivo databases.json em uma janela do editor, clique no ícone { } no canto superior direito do modo de exibição "Repositórios de Análise de Variantes". Em seguida, você pode ver uma representação estruturada dos repositórios, organizações e listas em seu modo de exibição. Por exemplo:

{
  "version": 1,
  "databases": {
    "variantAnalysis": {
      "repositoryLists": [
        {
          "name": "My favorite JavaScript repos",
          "repositories": [
            "facebook/react",
            "babel/babel",
            "angular/angular"
          ]
        }
      ],
      "owners": [
        "microsoft"
      ],
      "repositories": [
        "apache/hadoop"
      ]
    }
  },
  "selected": {
    "kind": "variantAnalysisSystemDefinedList",
    "listName": "top_10"
  }
}

Você pode alterar os itens mostrados no modo de exibição ou adicionar novos itens editando diretamente esse arquivo.

Definir as configurações para adicionar bancos de dados

Para adicionar automaticamente pastas de origem de banco de dados ao seu espaço de trabalho, você pode habilitar a configuração "Adicionar Bancos de Dados: Adicionar Origem de Banco de Dados ao Espaço de Trabalho".

Essa configuração é desabilitada por padrão. Você pode querer habilitar a configuração caso procure regularmente o código-fonte dos bancos de dados (por exemplo, para exibir a árvore de sintaxe abstrata do código). Para obter mais informações, confira "Explorar a estrutura do seu código-fonte".

Se você estiver em um espaço de trabalho de pasta única, a adição de pastas de origem do banco de dados fará com que o espaço de trabalho seja recarregado como um espaço de trabalho de várias raízes. Isso pode fazer com que o histórico de consultas e as listas de banco de dados sejam redefinidos.

Antes de habilitar essa configuração, recomendamos que você salve seu espaço de trabalho como um espaço de trabalho com várias raízes. Para obter mais informações, confira Multi-root Workspaces na documentação do Visual Studio Code.

Definir as configurações para testar consultas localmente

Para aumentar o número de threads usados para testar consultas, você pode atualizar a configuração "Testes em Execução: Número de Threads".

Para passar argumentos adicionais para a CodeQL CLI ao executar testes, você pode atualizar a configuração "Testes em Execução: Argumentos de Testes Adicionais". Para obter mais informações sobre os argumentos disponíveis, confira "test run".

Definir as configurações para telemetria e coleta de dados

Você pode configurar se a extensão do CodeQL coleta dados telemétricos. Ele está desabilitado por padrão. Para obter mais informações, confira "Telemetria no CodeQL para Visual Studio Code".

Leitura adicional