ログポイント
ログポイントは、実行を停止しないが、ヒット時にデバッグメッセージをコンソールに出力するブレークポイントです。
ログポイントは次のことに役立ちます:
デバッグログをクリーンかつ集中化し、
println()呼び出しを分散させないようにします。実行を止めずに、タイミング依存のプログラム領域についてインサイトを得ることができます。
編集できないライブラリや他のコードのデバッグに役立ちます。
ログエントリーから生成元のコードへ ナビゲートでき、ログポイントがヒットした際のスレッドのスタックトレースなど追加の実行時情報も取得できます。
ログポイントの作成
任意の実行可能ファイルの行と行の間のガターをクリックします。 黄色い円のアイコンが表示されます。

ログに記録する式を入力します。 この式を使うと、この時点でアクセスできるいずれかの状態をキャプチャできます。

既存のブレークポイントをログポイントに変換
ガター内の既存のブレークポイントを右クリックし、 詳細 をクリックするか、 Ctrl+Shift+F8 を押します。
ログオプションを構成します。
プログラムを一時停止せずにブレークポイントでログ出力だけを行いたい場合は、 中断 チェックボックスをオフにします。 ログ出力と同時に同じブレークポイントで停止したい場合は、 中断 をオンのままにします。
ログオプション
ブレークポイントに到達すると、次のログがコンソールに記録されます。
「ブレークポイントに到達」メッセージ:
Breakpoint reached at ocean.Whale.main(Whale.java:5)のようなログメッセージ。スタックトレース: 現在のフレームのスタックトレース。 これは、プログラムの実行を中断することなく、このポイントに至ったパスを確認する場合に役立ちます。
評価して記録:
"Initializing"やusers.size()などの任意の式の結果。式はアクセス修飾子を無視し、ブレークポイントが設定されている行のコンテキストで評価されます。
式の結果は、return ステートメントから取得されます。 return ステートメントがない場合、結果はコードの最後の行から取得されます。その行は必ずしも式である必要はなく、リテラルでも構いません。 これにより、カスタムメッセージの生成やプログラム実行中の値のトラックが可能です。
式を評価するときは、プログラムの動作や結果に影響を与える可能性があるため、副作用が発生する可能性があることを必ず認識してください。
ナビゲーションとスタックトレース
IntelliJ IDEA のログポイントでは、対応するコードにナビゲートしたり、ログポイントがヒットした際に実際に辿ったコードパスを確認できます。
IntelliJ IDEA のログポイントで生成されたログエントリーをクリックし、 開く を選択します。 または、 Ctrl を押しながらクリックします。

対応するコードがエディターで開き、ログポイントがヒットしたときのスレッドのスタックトレースを含む スタックトレース タブが開きます。
AI エージェントスキル
IntelliJ IDEA は、ログポイントでランタイム証拠を収集し、必要に応じてサスペンドブレークポイント、ステップ実行中、または式の評価にエスカレーションできる ij-debugger コーディングエージェントスキルをバンドルしています。
ソースコードだけでは信頼できない事実、例えばランタイム値、ブランチ判定、呼び出し順序、スレッドコンテキスト、またはプログラムが特定の行を実行したかどうかが必要な場合に役立ちます。
このスキルは IntelliJ IDEA で次の操作を記録します:
IntelliJ デバッガーセッションの開始または再利用
実行 / デバッグ構成の検出および実行
ログポイントの設定
デバッガーイベントの監視
一時停止中のセッションの調査および制御
エージェント所有や手動で設定したブレークポイントのトラック
スキルの有効化または無効化
このスキルはデフォルトで有効になっているため、明示的な有効化は不要です。 無効化するには、 に移動し、 ij-debugger チェックボックスをオフにします。
このスキルは、 AI チャット 経由で起動されたエージェントでそのまま利用できます。 外部エージェントの場合は、設定でインストールできます:
スキルをエージェントにインストール
に移動し、 ij -デバッガー を選択します。
無効化 の近くにある矢印ボタンをクリックし、 インストール対象 を選択して AI エージェントを選びます。

スキルを使用
エージェントのスキル呼び出し用構文を使って明示的にスキルを呼び出せます。 また、特定の問題に対して利用するかどうかはエージェント側で判断できます。

ログの絞り込み
ログポイントは通常のブレークポイントにログオプションが付いたものであり、他のブレークポイントのプロパティとも組み合わせて使えます。
- 条件
ブール式が
trueと評価された場合のみログ出力を行う条件を追加できます。 条件は、ブレークポイントが設定されている行で有効でなければなりません。- 通過数
ブレークポイントが特定の回数ヒットした後にのみ機能することを指定します。 これは、長時間実行されるループでアプリケーションを一時停止したり、頻繁なイベントを選択的にログとして記録したりするデバッグシナリオに役立ちます。
カウントが完了すると、リセットされて再び開始されます。 つまり、 通過数 が
10に設定されている場合、ブレークポイントは 10 回ヒットするごとに機能します。通過数 と 条件 の両方が設定されている場合、IntelliJ IDEA は最初に条件を満たし、次に 通過数 をチェックします。
- フィルター
フィルターを使うと、特定のクラスやオブジェクトインスタンス、呼び出し元メソッドのみにブレークポイントを制限できます。 同じコードに多くの場所から到達し、1 つのパスのみでログ出力が必要な場合に便利です。
- 依存ブレークポイント
非停止型ブレークポイントは、 次のブレークポイントに到達するまで無効にする 内で他のブレークポイントをトリガーする役割を担えます。 あるコードパス到達後のみ後続のブレークポイントを有効化したい場合に利用します。
すべてのブレークポイントのプロパティ一覧は、 Configure breakpoints' properties を参照してください。
ログポイントのアイコン
非停止型ブレークポイントは、通常の停止型ブレークポイントとは異なるガターアイコンを使用します。
行 | メソッド | Field | 例外 | |
|---|---|---|---|---|
中断しない | ||||
確認済みの一時停止なし |
ログポイントの管理
ログポイントは他のブレークポイントと同じ ブレークポイント ダイアログに表示されます。 ここから無効化、ミュート、除去、説明、グループ化を他のブレークポイント設定と同様に行えます。
詳細は ブレークポイント を参照してください。