[Laravel] Laravel Telescopeがリリースされました
アナウンスの通り、Laravel Telescopeがリリースされました。
Laravel TelescopeはMohamed SaidとTaylor Otwellによる新しいデバッグ・監視ツールであり、HTTPリクエスト、コマンドライン、スケジューラ、キューなど、アプリケーションに送られるすべてのリクエストを監視する一連のウォッチャーで構成されています。
現在Beta版ですが、Composerでの導入が可能です。
composer require laravel/telescope --dev
導入ができたらArtisanコマンドで適応させましょう。
php artisan telescope:install
php artisan migrate
/telescopeへ接続してみましょう。
(デフォルトでは/telescopeですが、config/telescope.phpで変更できます)
また、必要なLaravelのバージョンが5.7.7以上となっていますので注意しましょう。
Laravel Telescope
2018.10.24 16:00 追記
1. 情報取得時に419エラーが発生する
下記で解決できます。
419 HTTP status code · Issue #64 · laravel/telescope · GitHub
2. タイムゾーンの指定について
config/app.phpのtimezoneが適応される修正がdevelopで取り込み済みです。リリースを待ちましょう。
3. 必要なPHPのバージョンについて
現時点では7.1.3ですが、次回リリース時に7.2が必要になるかもしれません。
[Laravel] Laravel Telescopeが発表されました
Laracon AU 2018にて、Mohamed SaidとTaylor Otwellによる新しいデバッグ・監視ツールであるLaravel Telescopeが発表されました。
Laravel Telescopeはオープンソースとして近日中に公開される予定で、Composerによるインストールが可能です。
今までLaravelのデバッグツールではLaravel DebugbarやClockworkやLaravelが有名でしたが、これらに取って代わるアプリケーションです。
Laravel TelescopeはHTTPリクエスト、コマンドライン、スケジューラ、キューなど、アプリケーションに送られるすべてのリクエストを監視する一連のウォッチャーで構成されています。
これらのウォッチャーは、データベースクエリやその実行時間、キャッシュのヒットとミス、発生したイベント、送信されたメールなど、これらの要求とその関連データに関するあらゆる種類の情報を取得します。
Requests
Commands
Schedule
Jobs
Exceptions
Logs
Dumps
Queries
Models
Events
Mail
Notifications
Cache
Redis
詳しい内容については、こちらの動画で確認できます。
また、具体的な実装については以下のような応答がありました。
データはどこに保存されていますか?
StorageRepositoryインターフェースを継承する形で実装されています。デフォルトではデータベースとRedisを使用します。
オリジナルのデータストアの構築もインタフェース上のメソッドを6-7個の実装だけです。
どのくらいのデータを格納していますか?
プロダクション環境では多くのデータが破棄されます。
デフォルトでは一度に100件のデータが保有されます。
これらは全てオリジナルの設定が可能です。
スラックに通知することはできますか?
現在実装中で公開予定です。
現在使用中の監視ツールは必要無くなりますか?
必要かもしれない。Telescopeは簡単で扱いすいアプリケーションを目指しているので、あなたの監視ツールのように完璧では無いかもしれない。
タイムスタンプでフィルタリングできますか?
このアプリケーションはオープンソースなので十分に可能性はあります。
システムにどのような影響がありますか?
毎回1つのクエリしか実行されません。
本番環境では、何も挿入しないことがよくあります。
また、必要のないウォッチャーを無効にすることもできます。
1つのTelescopeで複数のアプリケーションを検査できますか?
はい。
それらの情報を同じデータベースに記録し、区別できるようにタグ/フィルタリングを付与するだけです。
システムの監視には外部ツールなどが必要でしたが、Laravel Telescopeがあれば全てシステム上で行えるようになるのでしょうか。
リリースに期待しましょう!