ホームページ  >  記事  >  バックエンド開発  >  Guzzle Http クライアントを監視する方法 – PHP の簡単なヒント

Guzzle Http クライアントを監視する方法 – PHP の簡単なヒント

王林
王林オリジナル
2024-08-17 06:39:08594ブラウズ

Guzzle は、HTTP リクエストの送信や Web サービス ライブラリの作成を容易にする人気の PHP HTTP クライアントです。最も人気のある PHP フレームワークは内部 Http クライアント サービスを提供しており、それらは単に Guzzle Http クライアントのカスタマイズされた実装です:

  • Laravel HTTP クライアント
  • Symfony HTTP クライアント
  • Laminas (旧名 Zend Framework) HTTP クライアント

Guzzle は 2 つの主な理由で広く使用されています:

1) カスタマイズと柔軟性

デザインパターンのファンのために、Guzzle は拡張機能を受け入れています。 Guzzle のコア コンポーネント (HTTP クライアント、リクエスト、レスポンス、Milddeware など) を拡張することで、新しい機能を Guzzle に簡単に実装できることを意味します。

2) ミドルウェアのサポート

Guzzle ミドルウェア システムを使用すると、開発者は送信前にリクエストを操作したり、処理前にレスポンスを操作したりできます。ログ記録、認証、エラー処理などの高度な機能を有効にすることができます。

Guzzle HTTP クライアントの概要

このチュートリアルでは、アプリケーションから外部サービスに対して行われるすべてのリクエストを簡単に監視できるように、カスタム Guzzle Http クライアントを作成するプロセスを説明します。

この実装を IoC コンテナ (またはサービス コンテナ) に挿入して、この実装をアプリケーション全体で利用できるようにする方法も説明します。

基本、カスタマイズ オプションについて説明し、実際のコード例を提供します。

ガズルをインストールする

Guzzle がインストールされていることを確認してください。そうでない場合は、Composer を使用してインストールします:

リーリー

基本的なカスタマイズ

基本的なカスタム Guzzle Http クライアントを作成することから始めましょう:

リーリー

この例では、Guzzle Http Client クラスを拡張し、コンストラクターをカスタマイズして、このクライアントによって行われたすべてのリクエストにカスタム ヘッダーを追加します。

Guzzle HTTP リクエストの監視

Guzzle は、HTTP リクエストを実行するためのショートカット メソッドを提供します:

リーリー

これらのメソッドはすべて、内部で汎用リクエスト メソッドを使用します。以下のスクリーンショットは、Guzzle クライアントのコードから取得したものです:

How to monitor Guzzle Http Client – PHP Fast tips

リクエスト メソッドをオーバーライドして、アプリケーションによって外部サービスに対して行われる HTTP 呼び出しの管理をカスタマイズできます。

リーリー

この例では、リクエストごとにトランザクションのタイムラインに新しいアイテムを追加するだけです。これで、Guzzle によって行われた API 呼び出しをモニタリング ビューで確認できるようになります:

How to monitor Guzzle Http Client – PHP Fast tips

Inspector を初めて使用する場合は、このチュートリアルに従って開始することができます:

https://inspector.dev/laravel-real-time-performance-monitoring-using-inspector-part-1/

コールバックに Segment パラメータを挿入して、項目を操作したり、より多くの情報を追加したりすることもできます:

リーリー

カスタムHTTPクライアントを使用する

これで、アプリケーションでカスタム クライアントを使用できるようになりました。この拡張機能は標準の Guzzle Http クライアントの動作に変更を加えないため、カスタム クラスのインスタンスを作成して通常どおり使用できます:

リーリー

Guzzle Http クライアントをコンテナにバインドする

この例では Laravel を使用しますが、基本的な概念は記事の冒頭で説明した最も一般的な PHP フレームワークと同じです。それらはすべてサービス コンテナで動作します。

Guzzle Http Client クラスのコンテナにシングルトン バインディングを作成します。したがって、このクラスを要求するすべてのサービスは、リアルタイム監視をサポートするカスタム クライアントのインスタンスを受け取ります。

リーリー

これで、Guzzle Http Client クラスを Artisan Command に挿入し、テストのためだけに Http 呼び出しを実行してみることができます。

リーリー

コマンドを実行して、HTTP 呼び出しがトランザクションのタイムラインに表示されるかどうかを確認します。

リーリー

検査官は初めてですか?アプリケーションを無料で監視する

Inspector は、ソフトウェア開発者向けに特別に設計されたコード実行監視ツールです。クラウド インフラストラクチャやサーバーに何もインストールする必要はありません。composer パッケージをインストールするだけで準備完了です。

他の複雑なオールインワン プラットフォームとは異なり、Inspector は非常に簡単で、PHP に優しいです。 Laravel または Symfony パッケージをお試しください。

効果的な自動化、深い洞察、アラートや通知をメッセージング環境に転送する機能をお探しの場合は、Inspector を無料でお試しください。アカウントを登録してください。

または、Web サイトで詳細をご覧ください: https://inspector.dev

How to monitor Guzzle Http Client – PHP Fast tips

以上がGuzzle Http クライアントを監視する方法 – PHP の簡単なヒントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。