Skip to main content

Code scanningログの表示

GitHub での code scanning 分析中に生成された出力を表示できます。

この機能を使用できるユーザーについて

読み取り アクセスできるユーザー

Note

この機能を使用するには、サイト管理者が code scanning を有効にする必要があります。 コードをスキャンするためにGitHub Actionsを使いなら、サイト管理者はGitHub Actionsの有効化と、必要なインフラストラクチャのセットアップもしなければなりません。 詳しくは、「アプライアンス用コードスキャンの構成」を参照してください。

code scanning の構成について

さまざまなツールを使って、リポジトリでの code scanning を構成できます。 詳細については、「コード スキャンの既定セットアップの構成」および「コード スキャンの高度なセットアップの構成」を参照してください。

利用できるログと診断情報は、リポジトリ中でのcode scanningの利用方法によります。 使用しているcode scanningの種類を確認するには、リポジトリの [セキュリティ] タブで、アラート一覧の [ツール] ドロップダウン メニューを使用します。 詳しくは、「リポジトリのコード スキャンのアラートの評価」をご覧ください。

分析と診断情報について

code scanningの実行に対する分析と診断情報は、GitHub上のCodeQL分析を使用して見ることができます。

アラート一覧の上部にあるヘッダーに、最新の分析に関する分析情報が表示されます。 詳しくは、「リポジトリのコード スキャンのアラートの評価」をご覧ください。

診断情報は [アクション] ワークフロー ログに表示され、概要メトリックと抽出診断からなります。 GitHub の code scanning ログへのアクセスの詳細については、後述する「code scanning からのログ出力の表示」を参照してください。

GitHubの外部でCodeQL CLIを使っているなら、診断情報はデータベース分析の間に生成された出力中に示されます。 この情報は、code scanningの結果とともにGitHubにアップロードするSARIF結果ファイル中にも含まれています。

CodeQL CLI の詳細については、「CodeQL クエリによるコード分析」を参照してください。

サマリメトリクスについて

サマリのメトリクスには以下が含まれます。

  • CodeQLデータベースの作成と抽出前のコードベース中のコードの行数(ベースラインとして使われます)
  • 外部ライブラリと自動生成されたファイルを含む、コードから抽出されたCodeQLデータベース中のコードの行数
  • 自動生成されたファイルと外部ライブラリを除く、CodeQLデータベース中のコードの行数

CodeQLソースコード抽出診断について

抽出診断は分析の間に見られたファイルのみをカバーし、以下のメトリクスを含みます。

  • 分析に成功したファイル数
  • データベースの作成中に抽出エラーを生成したファイル数
  • データベースの作成中に抽出の警告を生成したファイル数

デバッグ ログを有効にすると、データベースの作成時に発生した CodeQL 抽出子のエラーと警告に関する詳しい情報を確認できます。 詳しくは、「ログの詳細が十分ではない」をご覧ください。

code scanning からログ出力を表示する

このセクションは、GitHub Actionsを使って実行されるcode scanning(CodeQLあるいはサードパーティ)に適用されます。

リポジトリで code scanning を構成したら、実行したアクションの出力を見ることができます。

  1. リポジトリ名の下にある [アクション] をクリックします。

    "github/docs" リポジトリのタブのスクリーンショット。 [アクション] タブがオレンジ色の枠線で強調表示されています。

    code scanning ワークフローを実行するためのエントリを含むリストが表示されます。 エントリのテキストは、コミットメッセージに付けるタイトルです。

    [すべてのワークフロー] ページのスクリーンショット。 ワークフロー実行の一覧には、"Create .github/workflows/codeql.yml" というラベルの付いた実行があります。

  2. code scanning ワークフローのエントリをクリックします。

    Note

    既定のセットアップを有効にすることでトリガーされた CodeQL ワークフローの実行を探す場合、そのエントリのテキストは「CodeQL」です。

  3. 左側のジョブ名をクリックします。 たとえば、 [分析 (言語)] です。

    "Analyze (go)" ジョブのログ出力のスクリーンショット。 左側のサイドバーの [ジョブ] 見出しの下に、"Analyze (go)" が表示されています。

  4. このワークフローの実行時にアクションから出力されるログを確認します。

  5. 必要に応じて、ワークフローの実行をトリガーしたコミットを詳しく表示するには、短いコミット ハッシュをクリックしてください。 短いコミット ハッシュは、コミット作成者のユーザー名のすぐ後に表示されている 7 つの小文字です。

  6. すべてのジョブが完了すると、確認されたすべての code scanning アラートの詳細を表示できます。 詳しくは、「リポジトリのコード スキャンのアラートの評価」をご覧ください。