🚀 VS Code で で入手しましょう!

C/C++ 拡張機能のログ記録

ログ情報は、言語サーバーとデバッグアダプターで利用できます。問題レポートの情報に基づいて診断できない問題が発生している場合は、ログ記録を有効にしてログを送信するように依頼することがあります。

ログ情報は、言語サーバーの場合は [出力] パネルに、デバッグアダプターの場合は [デバッグコンソール] に直接配信されます。

言語サーバーのログ記録を有効にする

言語サーバーの完全なログ記録を有効にするには、次の手順に従います。

  1. コマンドパレットを開き、[基本設定: ワークスペース設定] を選択します。

  2. 検索ボックスで「logging」を検索します。

  3. [C_Cpp: ログレベル] を見つけて、レベルを [デバッグ] に変更します。

    Logging level

  4. メインメニューから、[表示] > [出力] を選択して、[出力] パネルを開きます。

  5. ログフィルターセレクターで [C/C++] オプションを選択します。

    Log filter selector

デバッグアダプターのログ記録を有効にする

デバッグアダプターのログ記録を有効にすると、VS Code と拡張機能の間、および拡張機能とデバッグアダプター間の通信情報が表示されます。

デバッグアダプターのログ構成は launch.json で構成されます。

LLDB-MI デバッガーのログ記録

macOS LLDB-MI デバッガーのログブロックとデフォルト構成は launch.json にあります。

"logging": {
    "trace": false,
    "traceResponse": false,
    "engineLogging": false
}

VS Code と CppTools 拡張機能

ここでのログ記録は trace ログと呼ばれ、launch.json 内のログブロックで tracetraceResponsetrue に設定することで有効にできます。これは、VS Code から拡張機能への通信と応答に関連する問題を診断するのに役立ちます。

CppTools 拡張機能とデバッガー

CppTools とデバッガー間のログ記録は engineLogging と呼ばれます。gdblldb などの MI デバッガーを使用する場合、これは mi インタープリターを使用して要求、応答、およびイベントを表示します。このログ記録は、デバッガーが正しいコマンドを受信し、正しい応答を生成しているかどうかを判断するのに役立ちます。

Visual C++ デバッガーのログ記録

launch.json の Visual C++ デバッガーのログブロックとデフォルト構成は次のとおりです。

"logging": {
    "engineLogging": false
}

Visual C++ デバッガーのログ記録は、VS Code との通信のみを表示します。デバッガーへのすべての通信はプロセス内で内部的に行われ、ログ記録では表示されないためです。