SalesforceのApex Replay Debugger
Apexコードのデバッグはなかなか不便です。System.debug()メソッドを各所に埋め込んで、読みにくいデバッグログファイルを頑張って読んでいる人も多いのではないでしょうか。
この記事では、モダン開発に近いコードをトレースして、実行された結果を確認できるApex Replay Debuggerをご紹介します。
デバッグ対象のApexコードにブレークポイントを設定する
最初にデバッグしたいApexコードの止めたい行にブレークポイントを設定しておきます。行番号の左をクリックすると赤丸でブレークポイントが設定できます。
組織のデバッグログを有効化する
VSコードのコマンドパレットで[SFDX: Replay Debugger用のデバッグログを有効]を選択します。これによって、VS Codeに設定されているデフォルト組織でデバッグログが生成されるようになります。
画面を操作してログを取得する
デバッグしたいApexコードが実行されるSalesforceページを操作すると、裏ではデバッグログが生成されます。
デバッグログファイルを取得する
コマンドパレットで[SFDX: Apexデバッグログを取得]を選択します。ログの一覧が表示されるので、実行した時間のログを選択して取得します。
ログが取得されて表示されるので、ログ上で右クリックして[SFDX: Launch Apex Replay Debugger with Current File]をクリックします。
Apexデバッグログを無効化
デバッグが終わったらデバッグログの生成を無効化します。
まとめ
Apex Replay Debuggerはその名の通り、実行時にデバッグできる機能ではなく、実行後にログからどんな実行がされたかを確認する機能です。
ただ、他の言語で提供されているデバッガーと体感的には同じで実行順序や変数の値を確認して、デバッグできるため、体感が大きく向上するのではないでしょうか。
この記事が気に入ったらサポートをしてみませんか?