Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
New Relicを使って PHPの監視、始めてみた
Search
まるすけ
November 14, 2024
1
98
New Relicを使って PHPの監視、始めてみた
まるすけ
November 14, 2024
Tweet
Share
More Decks by まるすけ
See All by まるすけ
dockerの豆知識を沢山話す
mal0961
3
380
Docker CLIのソースコードリーディングでDockerをチョット理解した話
mal0961
2
180
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
32
6.3k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Documentation Writing (for coders)
carmenintech
66
4.5k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
How to train your dragon (web standard)
notwaldorf
88
5.7k
A Philosophy of Restraint
colly
203
16k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
Done Done
chrislema
181
16k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Transcript
まるすけ (@malsuke096) New Relicを使って PHPの監視、始めてみた 1 2024/11/14
(注意) New Relicの回し者じゃありません 2
New Relicとは 3
New Relicとは 4 (オールインワン)オブザーバビリティプラットフォーム
New Relicとは 5 類似製品・パーツ
オブザーバビリティって? 6 https://speakerdeck.com/atsushikoga/opentelemetry-phpteshi-meru-ohusahahiriteiru-men?slide=6
なぜNew Relicの話 7
なぜNew Relicの話? 8 バイト先の会社が使ってた どうやら個人なら全機能が無料で使えるらしい! (ログは毎月100GBまで無料) PHPだと導入が楽らしい!? 学生特典もある
New Relicを使ってみる 9
New Relicの設定 10
New Relicの設定方法 11 PHP拡張のインストール (Dockerfileへ追記) php拡張のインストール 設定ファイルのライセンスキー設定
New Relicの設定方法 12 php-daemonコンテナの設定 (compose.yamlへ追記) daemonのコンテナを追加
おしまい 13
設定めっちゃ楽 導入だけなら本体のコードに触れすらしない 14
設定後 ダッシュボード 15
設定が終わった後リクエストを流すと 16 (PHP自体の応答速度) 8.32ms エラー率 (24.3%) スループット (11.9req/min) 満足度?
設定が終わった後リクエストを流すと 17 (PHP自体の応答速度) 8.32ms エラー率 (24.3%) スループット (11.9req/min) 満足度?
PHPでの活用 18
PHPでの活用 - Error・Warningの発見 19
PHPでの活用 - Error・Warningの発見 20 一覧表示される!嬉しい!
PHPでの活用 - Error・Warningの発見 21 詳細もわかる!
PHPでの活用 - Error・Warningの発見 22 詳細もわかる! どこで問題が起きてるかわかりやすい!
PHPでの活用 - 処理の遅いエンドポイントの発見 23
PHPでの活用 - 処理の遅いエンドポイントの発見 24 勝手に処理のエンドポイント毎の統計が表示される。 (カスタマイズすればいろいろ表示できるよ)
まて! 25
ルーティングを行っていると 全部/index.phpになるではないか! 26
PHPでの活用 - 処理の遅いエンドポイントの発見 27 Laravel勢とか.htaccessでひん曲げる勢とか。
PHPでの活用 - 処理の遅いエンドポイントの発見 28 安心してください。 newrelic_name_transactionを使えばこっちからpathを教える ことが可能です! (VScodeが馬鹿なのは御愛嬌 PhpStormを使おう)
PHPでの活用 - PHPの応答速度確認 29
PHPでの活用 - PHPの応答速度確認 30 クライアントへのレスポンスではなく、PHP自体の応答速度が 計測される。 レスポンスが遅い場合にPHPの問題なのか判断しやすい。
PHPでの活用 - PHPの応答速度確認 31 AWS上でPHPを動かすシンプルな構成 この時、ALBやCloudFrontでも問題が発生する可能性がある (AWSの障害等) 原因の切り分けが重要
このご時世、なんでもPHPが悪者にされる 誰が悪いのかはっきりさせたほうが良い 32
PHPでの活用 - 不要なファイル・関数の発見 33
PHPでの活用 - 不要なファイル・関数の発見 34 エンドポイントになっていればアクセスログから利用されてる か発見可能だけど... どっかからInclude、requireされてそうな場合発見が難しい こういうのやめてほしい。
PHPでの活用 - 不要なファイル・関数の発見 35 どこで参照されているかわからない場合にわざとWarningや Exceptionを発生させることで発見が可能
PHPでの活用 - 不要なファイル・関数の発見 36 スタックトレースもついてくるので 「どっから呼び出されているか」がわかる! test.phpがunused.phpを呼び出している
New Relicなかなかええやん 37
わし、無料やけど会社で使うと料 金いくらなんやろか 38
せや!バイト先の請求書見てみよっと! 39
40
41
42
New Relicはユーザ数課金だが どうやらフルプラットフォームユーザーは 月額$300/人 !! 43
料金形態 44 機能、ログ容量、ホスト数 ユーザ数課金じゃないので全員が見れる! エクセル職人が誕生しない! ユーザ数、ログ容量 ホスト数課金じゃないのでステージング等 いろんな場所でも活用できる!
どっちを使うかはあなた次第 45
ありがとうございました(終) 46