問題のトラブルシューティングに十分な詳細がログにない場合は、追加の情報を取得し、ログをより便利にするために実行できるいくつかの手順があります。
ステップのデバッグロギングの有効化
ステップ デバッグ ログを使用すると、実行中と実行後にジョブのログの詳細度が向上します。
ステップ デバッグ ログを有効にするには:
- ワークフローを含むリポジトリで、次のシークレットまたは変数を設定します。
ACTIONS_STEP_DEBUGをtrueに設定します。 シークレットと変数の両方が設定されている場合、シークレットの値が変数よりも優先されます。 - ワークフローを再実行するか、新しい実行をトリガーします。
シークレットまたは変数を設定すると、ステップ ログにさらに多くのデバッグ イベントが表示されます。 「ワークフロー実行ログの使用」を参照してください。
また、デバッグ ログが有効な場合にのみ、 runner.debug コンテキストを使用してステップを条件付きで実行することもできます。 「コンテキスト リファレンス」を参照してください。
CodeQL デバッグ アーティファクトの作成
警告
CodeQL デバッグ成果物には、 CodeQLによって分析されるソース コードのコピーが含まれているため、これらのバンドルは、そのソース コードにアクセスする権限を持つユーザーとのみ共有することをお勧めします。
CodeQLのデバッグに役立つ成果物を取得できます。
デバッグ 成果物は、名前が debug-artifacts で始まる成果物としてワークフロー実行にアップロードされます。
CodeQLワークフロー実行の一部として複数の言語を同時に分析する場合、言語ごとに 1 つの成果物が存在します。 データには、 CodeQL ログ、 CodeQL データベース、抽出されたソース コード ファイル、およびワークフローによって生成されたすべての SARIF ファイルが含まれます。
CodeQL成果物のダウンロードの詳細については、「ワークフローの成果物をダウンロードする」を参照してください。
これらの成果物は、 CodeQLcode scanningに関する問題をデバッグするのに役立ちます。 GitHub のサポートにお問い合わせの場合は、このデータを要求される可能性があります。
既定のセットアップ用の CodeQL デバッグ成果物 CodeQL 作成する
ステップ デバッグ ログを有効にし (ステップ デバッグ ログのCodeQLを参照)、新しいコミットを pull request ブランチにプッシュするなどして、新しい分析をトリガーすることで、CodeQLデバッグ成果物を作成できます。
プライベート レジストリへの CodeQL アクセス権を付与した場合は、名前が proxy-log-file で始まる追加の成果物が使用可能になります。 これには、プライベート レジストリに対する要求を認証するために既定のセットアップ CodeQL 使用され、プライベート レジストリ構成のトラブルシューティングに使用できる認証プロキシのログが含まれます。 詳細については、「セキュリティ機能にプライベート レジストリへのアクセスを許可する」を参照してください。
CodeQL詳細設定用のCodeQLデバッグ成果物の作成
CodeQL高度なセットアップ用のデバッグ成果物は、いくつかの異なる方法で取得できます。
デバッグ ログを有効にしてジョブを再実行する
CodeQL詳細セットアップ用のデバッグ成果物を作成する最も簡単なオプションは、デバッグ ログを有効にしてジョブを再実行することです。 GitHub Actionsワークフローとジョブの再実行の詳細については、「ワークフローとジョブの再実行」を参照してください。
必ず [デバッグ ログの有効化] を選ぶ必要があります。 このオプションにより、実行でランナー診断ログとステップ デバッグ ログが有効になります。 その後、デバッグ成果物 CodeQL ダウンロードしてさらに調査できるようになります。 ジョブを再実行して CodeQL デバッグ成果物を作成するときに、ワークフロー ファイルを変更する必要はありません。
ワークフロー フラグの使用
ワークフローでフラグを使用して、 CodeQL デバッグ成果物を作成できます。 このためには、init ファイルのCodeQL 分析ワークフローステップを変更し、debug: true設定する必要があります。
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
with:
debug: true
GitHub Actions ステップデバッグ ログを使用する
GitHub Actionsステップ デバッグ ログを有効にした場合、CodeQLはデバッグ成果物も生成し、ワークフロー実行の一部としてアップロードします。 手順については、「 ステップ デバッグ ログの有効化」を参照してください。