Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
まるすけ (@malsuke096) New Relicを使って PHPの監視、始めてみた 1 2024/11/14
Slide 2
Slide 2 text
(注意) New Relicの回し者じゃありません 2
Slide 3
Slide 3 text
New Relicとは 3
Slide 4
Slide 4 text
New Relicとは 4 (オールインワン)オブザーバビリティプラットフォーム
Slide 5
Slide 5 text
New Relicとは 5 類似製品・パーツ
Slide 6
Slide 6 text
オブザーバビリティって? 6 https://speakerdeck.com/atsushikoga/opentelemetry-phpteshi-meru-ohusahahiriteiru-men?slide=6
Slide 7
Slide 7 text
なぜNew Relicの話 7
Slide 8
Slide 8 text
なぜNew Relicの話? 8 バイト先の会社が使ってた どうやら個人なら全機能が無料で使えるらしい! (ログは毎月100GBまで無料) PHPだと導入が楽らしい!? 学生特典もある
Slide 9
Slide 9 text
New Relicを使ってみる 9
Slide 10
Slide 10 text
New Relicの設定 10
Slide 11
Slide 11 text
New Relicの設定方法 11 PHP拡張のインストール (Dockerfileへ追記) php拡張のインストール 設定ファイルのライセンスキー設定
Slide 12
Slide 12 text
New Relicの設定方法 12 php-daemonコンテナの設定 (compose.yamlへ追記) daemonのコンテナを追加
Slide 13
Slide 13 text
おしまい 13
Slide 14
Slide 14 text
設定めっちゃ楽 導入だけなら本体のコードに触れすらしない 14
Slide 15
Slide 15 text
設定後 ダッシュボード 15
Slide 16
Slide 16 text
設定が終わった後リクエストを流すと 16 (PHP自体の応答速度) 8.32ms エラー率 (24.3%) スループット (11.9req/min) 満足度?
Slide 17
Slide 17 text
設定が終わった後リクエストを流すと 17 (PHP自体の応答速度) 8.32ms エラー率 (24.3%) スループット (11.9req/min) 満足度?
Slide 18
Slide 18 text
PHPでの活用 18
Slide 19
Slide 19 text
PHPでの活用 - Error・Warningの発見 19
Slide 20
Slide 20 text
PHPでの活用 - Error・Warningの発見 20 一覧表示される!嬉しい!
Slide 21
Slide 21 text
PHPでの活用 - Error・Warningの発見 21 詳細もわかる!
Slide 22
Slide 22 text
PHPでの活用 - Error・Warningの発見 22 詳細もわかる! どこで問題が起きてるかわかりやすい!
Slide 23
Slide 23 text
PHPでの活用 - 処理の遅いエンドポイントの発見 23
Slide 24
Slide 24 text
PHPでの活用 - 処理の遅いエンドポイントの発見 24 勝手に処理のエンドポイント毎の統計が表示される。 (カスタマイズすればいろいろ表示できるよ)
Slide 25
Slide 25 text
まて! 25
Slide 26
Slide 26 text
ルーティングを行っていると 全部/index.phpになるではないか! 26
Slide 27
Slide 27 text
PHPでの活用 - 処理の遅いエンドポイントの発見 27 Laravel勢とか.htaccessでひん曲げる勢とか。
Slide 28
Slide 28 text
PHPでの活用 - 処理の遅いエンドポイントの発見 28 安心してください。 newrelic_name_transactionを使えばこっちからpathを教える ことが可能です! (VScodeが馬鹿なのは御愛嬌 PhpStormを使おう)
Slide 29
Slide 29 text
PHPでの活用 - PHPの応答速度確認 29
Slide 30
Slide 30 text
PHPでの活用 - PHPの応答速度確認 30 クライアントへのレスポンスではなく、PHP自体の応答速度が 計測される。 レスポンスが遅い場合にPHPの問題なのか判断しやすい。
Slide 31
Slide 31 text
PHPでの活用 - PHPの応答速度確認 31 AWS上でPHPを動かすシンプルな構成 この時、ALBやCloudFrontでも問題が発生する可能性がある (AWSの障害等) 原因の切り分けが重要
Slide 32
Slide 32 text
このご時世、なんでもPHPが悪者にされる 誰が悪いのかはっきりさせたほうが良い 32
Slide 33
Slide 33 text
PHPでの活用 - 不要なファイル・関数の発見 33
Slide 34
Slide 34 text
PHPでの活用 - 不要なファイル・関数の発見 34 エンドポイントになっていればアクセスログから利用されてる か発見可能だけど... どっかからInclude、requireされてそうな場合発見が難しい こういうのやめてほしい。
Slide 35
Slide 35 text
PHPでの活用 - 不要なファイル・関数の発見 35 どこで参照されているかわからない場合にわざとWarningや Exceptionを発生させることで発見が可能
Slide 36
Slide 36 text
PHPでの活用 - 不要なファイル・関数の発見 36 スタックトレースもついてくるので 「どっから呼び出されているか」がわかる! test.phpがunused.phpを呼び出している
Slide 37
Slide 37 text
New Relicなかなかええやん 37
Slide 38
Slide 38 text
わし、無料やけど会社で使うと料 金いくらなんやろか 38
Slide 39
Slide 39 text
せや!バイト先の請求書見てみよっと! 39
Slide 40
Slide 40 text
40
Slide 41
Slide 41 text
41
Slide 42
Slide 42 text
42
Slide 43
Slide 43 text
New Relicはユーザ数課金だが どうやらフルプラットフォームユーザーは 月額$300/人 !! 43
Slide 44
Slide 44 text
料金形態 44 機能、ログ容量、ホスト数 ユーザ数課金じゃないので全員が見れる! エクセル職人が誕生しない! ユーザ数、ログ容量 ホスト数課金じゃないのでステージング等 いろんな場所でも活用できる!
Slide 45
Slide 45 text
どっちを使うかはあなた次第 45
Slide 46
Slide 46 text
ありがとうございました(終) 46