Symfony Advent Calendar 2023 の5日目の記事です!
\ カレンダー空きがありますので是非埋めてください /
今回は、Symfony Profilerの個人的に好きなところを勝手に紹介します!!!
概要
Symfony Profilerとは?
リクエスト実行時の詳細情報を提供してくれる開発ツールです。
「なんか思った通り動かないな〜」って時のデバックに私はよく使用しています。
以下コマンドを使って導入することができます。
$ composer require --dev symfony/profiler-pack
好きなところ5選
好きなところ①「Validatorの詳細がわかる!」
Formsナビも便利なんですが、これとセットでフォームをsubmitする系の開発をしてる時によくお世話になっているのがValidatorナビです。
フォームsubmitで想定してないエラーが出た時は大体ココを確認します。
下の画像の場合、「想定していないid
というフィールドをsubmitしたためinvalidとされた」ということがわかります
好きなところ②「DoctrineやSQLについて確認できる!」
find系のメソッドを実装した時に、想定通りのSQLかなとか確認するのに使ってます。
Entities Mappingを確認すると、定義のミスとかにも気付けるのでたまに見てます。
最近気づいたんですが、EXPLAN結果も確認できます。
好きなところ③「DispatchされたMessagesの確認ができる!」
好きなところ④「DispatchされたEventsの確認ができる!」
Called / No Callled Listenerの確認もできます!
SymfonyってビルドインされたKernel Eventがこんだけあって、デフォルトでEventListenerこんなにあるんだーってのも確認できます。
Symfonyまだよくわかってない私からすると勉強になります
ちなみにSymfonyってどんな順番でEventとか動いてるんだろ?ってときにはPerformanceナビが便利です。
好きなところ⑤「Deprecationsについて気付きやすい!」
Logs > Deprecationsより、Deprecationsについてだけピックアップして確認できるのが個人的にありがたいです。
ここをたまに見て、issueを作って時間ある時に対応したりしています。
【追記】Symfony6.4から増えたもの
ConsoleCommand
参考: https://symfony.com/blog/new-in-symfony-6-4-command-profiler
Workflow
参考: https://symfony.com/blog/new-in-symfony-6-4-workflow-profiler
最後に
最後に、私のSymfony Profiler最大推しポイントは「なんか開発ゴリゴリやってる感がでてワクワクする!」ですかね