# 終了コード

終了コードは、 CodeQL CLI がコマンドを実行した後のコマンドの状態を示します。

## 終了コードについて

CodeQL CLIは、実行する各コマンドの状態を終了コードとして報告します。
この終了コードは、後続のコマンド、または CodeQL CLIに依存する他のツールに関する情報を提供します。

## 0

成功しました。通常通り終了しました。

## 1

コマンドは、質問に対する答えが "いいえ" であると正しく判断しました。

この終了コードは、[テストの実行](/ja/enterprise-server@3.22/code-security/reference/code-scanning/codeql/codeql-cli-manual/test-run)、[データセットのチェック](/ja/enterprise-server@3.22/code-security/reference/code-scanning/codeql/codeql-cli-manual/dataset-check)、[クエリ形式](/ja/enterprise-server@3.22/code-security/reference/code-scanning/codeql/codeql-cli-manual/query-format)、[リゾルバーエクストラクター](/ja/enterprise-server@3.22/code-security/reference/code-scanning/codeql/codeql-cli-manual/resolve-extractor) などの一部のコマンドでしか使用されません。
詳しくは、それぞれのコマンドのドキュメントをご覧ください。

## 2

問題が発生しました。

CLI は、人が読んでわかるエラー メッセージを stderr に書き込みます。
これには、エクストラクターの動作での内部エラーとユーザー向けエラーを `codeql` ドライバーが区別できないため、エクストラクターが内部エラーで失敗する場合が含まれます。

## 3

ランチャーが CodeQL インストール ディレクトリを見つけることができませんでした。

この場合、ランチャーは CodeQL CLI のJava コードを起動できません。 これは、 CodeQL のインストールに重大な問題が発生した場合にのみ発生します。

## 32

エクストラクターは、[データベースの作成](/ja/enterprise-server@3.22/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-create) または [データベースの完了](/ja/enterprise-server@3.22/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-finalize) を実行するときに、分析対象のコードを見つけられませんでした。

## 33

1 つ以上のクエリ評価がタイムアウトしました。

並列に評価されたクエリの一部はタイムアウトしなかった可能性があります。それらのクエリの結果は、通常どおりに生成されます。

## 98

評価が明示的に取り消されました。

## 99

CodeQL CLIメモリが不足しました。

これは、必ずしもすべてのマシンの物理 RAM が使われたことを意味するとは限りません。

`--ram` オプションを使って明示的に制限を設定していない場合、JVM によって起動時に既定の制限が決定されます。

## 100

致命的な内部エラーが発生しました。

これはバグと見なす必要があります。 通常、CLI は省略されたエラーの説明を stderr に書き込みます。
バグを再現できる場合は、 `--logdir` を使用し、バグ レポートでログ ファイルを GitHub に送信すると便利です。

## Other

`codeql` を実行する JVM 内の極めて深刻な問題の場合は、それ自体の判断で 0 以外の終了コードが返される可能性があります。
これは、 CodeQL インストールに重大な問題がある場合、または CodeQL プロセスを実行しているホスト システムにメモリの問題がある場合にのみ発生します。 たとえば、Unix システムは、カーネルが開始したプロセスを強制終了したことを示すために、終了コード 137 CodeQL 返す場合があります。 このトラブルシューティングを行う 1 つの方法は、`–ram=` ステップの`codeql database analyze` フラグを変更して、ワークフローを再実行することです。