Skip to main content

このバージョンの GitHub Enterprise サーバーはこの日付をもって終了となります: 2026-03-17. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの向上、新機能の向上を図るために、最新バージョンの GitHub Enterprise サーバーにアップグレードしてください。 アップグレードに関するヘルプについては、GitHub Enterprise サポートにお問い合わせください

SARIF 結果が 1 つ以上の制限を超えている

1 つ以上の制限を超えているために、SARIF ファイルが code scanning によって拒否された場合の問題を解決する方法について説明します。

SARIF 結果の code scanning 制限について

# SARIF results exceed soft limits
  Locations for an alert exceeded limits
  Analysis SARIF file exceeded alert limits
  Rule tags in SARIF file exceed limits
  Alert in SARIF upload exceeded thread flow location limits
  Repository is at risk of exceeding the alert limit.

# SARIF results exceed hard limit
  Alert(s) in SARIF file exceeded thread flow location limits
  Analysis SARIF file rejected due to extension limits
  Analysis SARIF file rejected due to location limit
  Analysis SARIF file rejected due to rule tag limits
  Analysis SARIF file rejected due to result limits
  Analysis SARIF file rejected due to rule limits
  Analysis SARIF file rejected due to run limits
  All analysis uploads blocked due to alert limit

Code scanning では、SARIF 結果ファイルのフィールドに対して 2 種類の制限が設定されています。

  • 格納される、またユーザーに表示されるデータの量を決定するソフト制限。
  • 処理に受け入れられるデータの最大量を決定するハード制限。

CodeQL またはサードパーティの分析ツールによって生成された SARIF ファイルに対して、これらのエラーが表示されることがあります。

SARIF データ最大値データ切り捨て制限
ファイルあたりの実行数20なし
実行あたりの結果数25,000重要度による優先順位で、上位 5,000 件の結果のみが含まれます。
実行あたりのルール数25,000なし
実行あたりのツール拡張機能数100なし
結果あたりのスレッド フローの場所数10,000優先順位付けを使用して、上位 1,000 個のスレッド フローの場所のみが含まれます。
結果あたりの場所数1,000100 個の場所のみが含まれます。
ルールあたりのタグ数2010 個のタグのみが含まれます。
アラート制限1,000,000なし

SARIF ファイルの検証の詳細については、「Code scanningの SARIF サポート」を参照してください。

ソフト制限のエラーの修正

ソフト制限を超えている場合、code scanning によって最も優先度の高い情報が表示されます。 多くの場合、code scanning の構成を変更する必要はありません。 チームがアラートを修正するにつれ、各実行で報告される結果の数はソフト制限内に収まるまで減少し、すべての結果が表示されるようになります。 または、ハード制限のエラーについての説明に示されている方法を使用することもできます。

「結果制限により分析 SARIF ファイルが拒否されました」の修正

SARIF 結果ファイルに含まれる結果の数を減らすための、多くの考慮事項と考えられる解決策があります。 詳しいガイダンスについては、「SARIF 結果ファイルが大きすぎる」を参照してください。

「SARIF ファイル内のアラートがスレッド フローの位置制限を超過しました」の修正

結果に含まれるデータフロー パスの数を制限するよう分析を構成できます。 既定では、結果ごとに 4 つのデータフロー パスが含まれます。

  • CodeQL の code scanning 用の高度な設定: パスの数を最大 1 または 0 に制限するように analyze ステップを更新します。

    - name: Perform CodeQL Analysis
      uses: github/codeql-action/analyze@v4
      env: 
        CODEQL_ACTION_EXTRA_OPTIONS: '{"database":{"interpret-results":["--max-paths", 1]}}'
    
  • CodeQL CLI database analyze: --max-paths=1 フラグを含むようにデータベース分析コマンドを更新します。 詳しくは、「データベース分析」をご覧ください。

メモ

max-paths 設定は、すべてのデータフロー クエリの結果に影響します。

「実行制限により分析 SARIF ファイルが拒否されました」の修正

最もシンプルな方法は、実行ごとに新しい SARIF ファイルを生成し、各ファイルを個別にアップロードすることです。 各結果に "category" を追加することで、code scanning が結果を適切に格納して表示できるようになります。 詳しくは、「SARIF ファイルを GitHub にアップロードする」をご覧ください。

「規則の制限により分析 SARIF ファイルが拒否されました」の修正

これには 2 つの方法が考えられます。

  1. コードの分析に使用するルールの数を減らします。 詳細については、「SARIF 結果ファイルが大きすぎる」の「実行するクエリ スイートの定義」と「分析からクエリを除外する」を参照してください。
  2. 各回で異なるルール セットを使用して分析を 2 回実行し、両方の結果ファイルを code scanning にアップロードします。 詳しくは、「SARIF ファイルを GitHub にアップロードする」をご覧ください。

「拡張制限により分析 SARIF ファイルが拒否されました」の修正

最も簡単な方法は、ツールを実行するたびに個別の SARIF ファイルを作成し、各ファイルを個別にアップロードすることです。 ツールの保守管理者への問い合わせが必要となる場合もあります。 詳しくは、「SARIF ファイルを GitHub にアップロードする」をご覧ください。

CodeQL 分析では、このエラーは生成されないはずです。 CodeQL アクション、または CodeQL CLI の使用中にこのエラーが発生した場合は、GitHub のサポートまでご連絡ください。 詳しくは、「GitHub Support へのお問い合わせ」をご覧ください。

「場所の制限により分析 SARIF ファイルが拒否されました」の修正

この問題を解決する最善の方法は、一般的に、報告する場所が多すぎるクエリを特定して、分析から除外することです。 その方法の詳細については、「SARIF 結果ファイルが大きすぎる」を参照してください。

「規則タグの制限により分析 SARIF ファイルが拒否されました」の修正

reportingDescriptor オブジェクトに対して報告されるタグの配列が 10 未満になるように、SARIF ファイルまたはジェネレーターを更新する必要があります。 詳細については、properties.tags[]の「」を参照してください。

「リポジトリがアラートの上限を超過するリスクがあります」および「アラートの制限により、すべての分析アップロードがブロックされました」の修正

この制限は、正常に機能する code scanning 構成の一部として、必要とされている以上に多くの一意のアラートを生成しているリポジトリによってトリガーされます。 これは、使用されているサードパーティ製ツールからの出力が原因であることが考えられ、ユーザーの構成エラーではない可能性があります。 ユーザー構成エラーとツール ベンダー エラーのどちらも、原因として考えられます。

この問題を解決するには、いくつかの手順があります。

  1. 生成されている SARIF ファイルを調べて、ツールのすべての実行で code scanning アラートが個別のものとして分類される原因を特定します。 これは、通常、次のいずれかが原因となります。
    • SARIF artifactLocation.uri プロパティ (code scanning アラート ユーザー インターフェイスのファイルパス) が、一時ディレクトリまたは生成されたファイル名が含まれていることにより、決定的ではない場合。
    • 使用しているツールで生成される SARIF ルール名または artifactLocation object uri property 値に、変動が生じる場合。これは通常、ハッシュ (Git コミットや Docker イメージの SHA など) や、実行または環境間で変化する他のデータ ソースの使用が原因です。
  2. 問題の原因を特定したら、それに応じて構成を更新し、ツール ベンダーのツールが不安定な SARIF 結果の原因である場合は、ツール ベンダーに問い合わせる必要があります。
  3. ツール ベンダーによって修正されるまで、非確定的な出力を生成するサードパーティ製ツールのコード スキャン結果のアップロードを停止します。

「アラートの制限により、すべての分析アップロードがブロックされました」に対する追加の手順

コード スキャンの構成を修正し、サードパーティ製ツールの出力を削除または修正するのに加えて、問題のある構成のアラートの削除については、サイト管理者に連絡して、削除の支援を依頼する必要があります。

          **現時点では、セルフサービス方式でアラートを削除するための手段がないため、コード スキャンを再度有効にする前に、カスタマー サポートにお問合せいただく必要があります。**