Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DrupalのWeb Profiler #drupal_haneda

DrupalのWeb Profiler #drupal_haneda

HikaruMaruyama

November 24, 2022
Tweet

More Decks by HikaruMaruyama

Other Decks in Programming

Transcript

  1. Drupalの
    WebProfiler
    まるやま ひかる
    Drupal Meetup Haneda #46 (2022-11-24)

    View Slide

  2. 自己紹介
    丸山 ひかる
    アクイアジャパン テクニカルトランスレーター
    ● 1991年10月29日 生まれ
    ● 独立系ソフトウェア開発会社でソフトウェアエンジ
    ニア
    ● のちエバンジェリストとしてプロダクトの啓蒙活動
    ● 2019年8月 アクイアにジョイン
    ● ウェブサイトのコンテンツの技術翻訳やローカライ
    ズを担当
    Ruby / Rails / Web API / Docker / AWS
    ラーメン / スイーツ / キャンプ飯 / 登山

    View Slide

  3. 最近のトピック①
    DrupalCamp DEN 2023 Iwakuni
    開催決定!参加申込、登壇申込、スポン
    サー各種受付中
    https://drupal-camp2023.den-japan.org/

    View Slide

  4. 最近のトピック②
    アドベントカレンダーの季節になりました!今
    年こそは全部埋めたいですね
    https://qiita.com/advent-calendar/2022/drupal

    View Slide

  5. 仕事の話
    Drupalに関するウェビナーを
    定期開催中!次回は12/7(水)
    https://www.acquia.com/jp/events

    View Slide

  6. DrupalのWeb Profiler

    View Slide

  7. ● DrupalのWeb Profilerとは
    ● 導入方法
    ● デモ
    アジェンダ

    View Slide

  8. DrupalのWeb Profilerとは

    View Slide

  9. こういう時どうしますか?
    ● ページの実行時間を計測したい
    ● デバッグしたい
    ○ どんな外部リクエストが発生しているか
    ○ どんなDBクエリが実行されたのか
    ○ どのイベントが発火したか

    View Slide

  10. DrupalのWeb Profiler
    ● サイトのリクエスト実⾒に関する詳細情報を
    提供する開発ツール
    ● Drupalのコントリビュートモジュールとして
    提供される
    ● ページで実⾒されたルーティング情報や実
    ⾒時間、データベースのクエリ数などデバッ
    グに役⾒つ情報をグラフィカルに⾒ることが
    できる

    View Slide

  11. Symfonyにも似たようなものが
    DrupalのWeb Profiler
    SymfonyのProfiler

    View Slide

  12. SymfonyのProfiler
    ● Symfony では Profilerと呼ばれるツールが存在
    ● DrupalのWeb Profilerが後発
    ● どちらもSymfonyのHttpKernelやRoutingなどのコン
    ポーネントに依存している

    View Slide

  13. Web Profilerの導入

    View Slide

  14. インストール方法
    Devel 5系
    を利用して
    いる
    使用中のDevelモジュールのバージョン
    によって、インストール方法が異なる
    composerで
    drupal/webprofiler
    をインストール
    Yes
    No
    Devel 4系
    を利用して
    いる
    Yes
    Develに同梱されてい
    るWeb Profilerモ
    ジュールを利用
    Web Profilerモジュールを有効化する

    View Slide

  15. Web Profilerが有効化されると
    ● Web Profiler モジュールを有効化すれば、ページ下部にデ
    バッグツールバーが表示されるようになる
    ● 追加の設定無しにすぐに使い始めることができる

    View Slide

  16. デモ

    View Slide

  17. Web Profilerの主な機能
    ● デバッグツールバー
    ● プロファイラダッシュボード
    ● 保存済みのプロファイラ一覧

    View Slide

  18. Web Profilerで取得可能な情報①
    名前 説明
    PHP config PHPの設定情報。
    Request リクエストのルート情報やリクエスト
    /レスポンスヘッダなど。
    Timeline 処理時間のタイムライングラフ。
    Performance Timing DNS参照にかかった時間や初期レスポンスの待機にかかった時間
    (Time to first byte)など。
    Database ページで実行されたクエリ数、クエリ実行時間などデータベースに関する情報。
    User リクエストを実行している
    Drupalのユーザー情報。
    Views ページで読み込まれた
    Drupal Viewの一覧。
    Block ページで読み込まれたブロックの一覧。
    Forms ページで読み込まれたフォームの情報。
    Extensions サイトで有効化されている全てのモジュール
    /テーマの一覧。
    Cache キャッシュヒット/キャッシュミスの一覧。
    Assets ページで読み込まれた
    CSS/JSファイルの一覧。
    これらの項目は
    デフォルトの状態で
    取得可能です

    View Slide

  19. Web Profilerで取得可能な情報②
    名前 説明
    Config ページで呼び出された
    Configデータの一覧。
    Events ページで呼び出された
    /呼び出されなかったイベントリスナーの一覧。
    Http ページで呼び出された外部
    HTTPリクエストの一覧。
    Mail ページを介して実行されたメール送信の一覧。
    Routing サイトに登録されている全てのルート一覧。
    Services ページで初期化された
    /されなかったサービスの一覧。
    State ページで読み込まれた
    State情報の一覧。
    Theme サイトでデフォルトにしているテーマに関する情報。
    Translations ページで読み込まれたユーザーインターフェースの翻訳文字列の一覧。
    これらの項目は
    デフォルトの状態では
    見れませんが設定で
    追加が可能です

    View Slide

  20. もっと詳しく
    知りたい方は・・
    「Drupal 9 おいしいレシピ集 3」
    Amazonで好評発売中!
    https://www.amazon.co.jp/dp/B0BDGFDWDR

    View Slide

  21. Thank you!

    View Slide