# 設定のカスタマイズ

CodeQL拡張機能のVisual Studio Codeの設定をニーズに合わせて編集できます。

##

```
          CodeQL用Visual Studio Code拡張機能の設定について

          CodeQL拡張機能のVisual Studio Codeには、次のような多数の設定を変更できます。
```

* 拡張機能が使用する CodeQL CLI のバージョン。
* 拡張機能が前のクエリを表示する方法。
* 拡張機能が前のクエリを実行する方法。

##

```
          CodeQL拡張機能の設定の編集
```

1. \[拡張機能] ビューを開き、 **CodeQL** を右クリックし **、\[拡張機能の設定]** をクリックします。

   ![右クリック メニューが表示され、\[拡張機能の設定\] が濃いオレンジ色で囲まれた \[拡張機能\] ビューのスクリーンショット。](/assets/images/help/security/codeql-for-vs-code-extensions-view.png)

2. \[設定] ウィンドウで、必要に応じて、設定を編集します。 新しい設定は自動的に保存されます。

   ![VS Code 内に表示される \[VS Code 向け CodeQL の拡張機能設定\] ウィンドウのスクリーンショット。](/assets/images/help/security/codeql-for-vs-code-extension-settings.png)

> \[!TIP]
> または、 VS Code Command Palette を開き、\[ **ユーザー設定を開く (JSON)] を選択して、JSON 形式で設定を**編集することもできます。

### <c0> のバージョンの選択

既定の動作をオーバーライドして特定のバージョンのCodeQL CLIを使用するには、拡張機能の設定でCodeQL CLIの「実行可能パス」を指定し、CodeQL CLIの既存のコピーを指すように設定します。 つまり、`codeql` (Linux and macOS) または `codeql.exe` (Windows) という名前のファイルです。 規定動作の詳細については、[「AUTOTITLE」](/ja/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/configuring-access-to-the-codeql-cli)を参照してください。

### Query History 項目のラベルを変更する

Query History の \[形式] 設定は、Query History で拡張機能がクエリを一覧する方法を制御します。 既定では、各項目には次の形式のラベルがあります。

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

既定のラベルをオーバーライドするには、Query History の項目に別の形式を指定します。

### Query History 項目の維持期間を変更する

既定では、\[Query History] ビューの項目は、30 日間保持されます。 \[クエリ履歴: TTL] 設定を変更することで、別の有効期間 (TTL) を設定できます。 項目を無期限に保持するには、値を \[0] に設定します。

### クエリをローカルで実行するための設定を構成する

\[実行中のクエリ] には、いくつかの設定があります。 たとえば、クエリの実行速度が遅すぎてタイムアウトが頻繁に発生する場合は、\[実行中のクエリ: メモリ] 設定を変更してメモリを増やすことができます。

クエリのパフォーマンスを調べるには、\[実行中のクエリ: デバッグ] 設定を有効にして、タイミングとタプル数を含めるようにします。 これにより、"出力" ビューの CodeQL \[クエリ サーバー] タブのログに表示されます。 タプル数は、クエリによって計算された[述語](https://codeql.github.com/docs/ql-language-reference/predicates/#predicates)のサイズを示すので便利です。

クエリ サーバーのログをカスタムの場所に保存するには、\[実行中のクエリ: カスタム ログ ディレクトリ] 設定を編集します。 カスタム ログ ディレクトリを使用する場合、拡張機能は、各ワークスペース セッションの後にログを自動的に削除するのではなく、完全に保存します。 これは、ログを調査して、クエリのパフォーマンスを向上させる場合に便利です。

### バリアント分析の設定を構成する

\[バリアント分析] の下には、バリアント分析用の GitHub リポジトリのリストを定義または編集したり、別のコントローラー リポジトリに変更したりするために使用できる設定がいくつかあります。 コントローラー リポジトリの目的と要件については、[「AUTOTITLE」](/ja/code-security/codeql-for-vs-code/getting-started-with-codeql-for-vs-code/running-codeql-queries-at-scale-with-multi-repository-variant-analysis)を参照してください。

```
          Visual Studio Codeという名前の`databases.json` ワークスペース内のファイルを編集して、[バリアント分析リポジトリ] ビューに表示される項目を編集することもできます。 このファイルには、ビューに表示されるすべての項目の JSON 表記が含まれています。 [エディター] ウィンドウで `databases.json` ファイルを開くには、[バリアント分析リポジトリ] ビューの右上にある **{ }** アイコンをクリックします。 その後、リポジトリ、組織、リストの構造化された表記をビューに表示できます。 例えば次が挙げられます。
```

```json
{
  "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"
  }
}
```

このファイルを直接編集することで、ビューに表示される項目を変更したり、新しい項目を追加したりできます。

### データベースを追加するための設定を構成する

データベース ソース フォルダーをワークスペースに自動的に追加するには、\[データベースを追加: ワークスペースへのデータベース ソースを追加] 設定を有効にします。

既定では、この設定は無効になっています。 データベースのソース コードを定期的に閲覧する場合 (たとえば、コードの抽象構文ツリーを表示する場合) に、この設定を有効にできます。 詳細については、「[ソース コードの構造の探索](/ja/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/exploring-the-structure-of-your-source-code)」を参照してください。

> \[!NOTE]
> 単一フォルダー ワークスペース内にいる場合、データベース ソース フォルダーを追加すると、ワークスペースがマルチルート ワークスペースとしてリロードされます。 これにより、Query History とデータベース リストがリセットされる場合があります。
>
> この設定を有効にする前に、ワークスペースをマルチルート ワークスペースとして保存することをお勧めします。 詳細については、[](https://code.visualstudio.com/docs/editing/workspaces/multi-root-workspaces)ドキュメントのVisual Studio Code」を参照してください。

### クエリをローカルでテストするための設定を構成する

クエリのテストに使用されるスレッドの数を増やすには、\[実行中のテスト: スレッド数] 設定を更新します。

テストの実行時に追加の引数を CodeQL CLI に渡すには、\[テストの実行: 追加のテスト引数] 設定を更新します。 使用可能な引数の詳細については、[「AUTOTITLE」](/ja/code-security/codeql-cli/codeql-cli-manual/test-run)を参照してください。

### テレメトリとデータ コレクションの設定を構成する

```
          CodeQL拡張機能がテレメトリ データを収集するかどうかを構成できます。 この機能は、既定では無効になっています。 詳細については、「[AUTOTITLE](/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/telemetry-in-codeql-for-visual-studio-code)」を参照してください。
```

## 詳細については、次を参照してください。

* [
  ](https://code.visualstudio.com/docs/configure/settings)ドキュメントのVisual Studio Code