BearyChat Laravel プロジェクトのエラー ログ通知ロボットを作成する
Laravel はログ処理のために Monolog を統合しています。実際、Monolog はすでに多くのハンドラーをサポートしています。これは、私たちのチームが Bearychat を使用しているためです。チームコミュニケーションツールでは、Laravel プロジェクトのリアルタイムエラーログが Bearychat のディスカッショングループにプッシュされ、チームメンバーが例外をすばやく見つけて問題を解決できるようになります。実際、これは非常に簡単で、わずか数行で実行できます。コードの。
- まずBearyChatHandlerを作成します
<?php namespace App;use Monolog\Handler\AbstractProcessingHandler; use Monolog\Logger; use Monolog\Handler\Curl;class BearyChatHandler extends AbstractProcessingHandler { private $data; private $webhook; public function __construct($webhook, $channel, $level = Logger::NOTICE, $bubble = true) { $this->data['channel'] = $channel; $this->webhook = $webhook; parent::__construct($level, $bubble); } /** * {@inheritDoc} */ protected function write(array $record) { $postData = [ 'text' => $record['datetime']->format('Y-m-d H:i:s') . '-' . $record["level"] . '-' . $record["level_name"], 'markdown' => false, 'notification' => 'Laravel Error Log', 'attachments' => [ [ 'title' => current(preg_split("/([.\n\r]+)/i", $record['message'])), 'text' => $record['message'], 'color' => '#ffa500' ] ] ]; $postString = json_encode(array_merge($this->data, $postData)); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $this->webhook); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $postString); curl_setopt($ch, CURLOPT_HTTPHEADER, array( "Content-Type: application/json" )); Curl\Util::execute($ch); }}
- BearyChat Groupを作成するのに使用します。通知を受け取る
-
- ロボットをディスカッション グループに追加し、[Incoming] をクリックして、たとえば「Laravel Log Robot」という名前のグループを追加し、前の手順で作成した「Laravel Error」を送信対象のログレポートに設定し、WebhookのURLアドレスを取得します
- このディスカッショングループに該当者を追加します
ChearyChatHandlerを統合する -
カスタム Monolog 構成
アプリケーションの Monolog の構成方法を完全に制御したい場合は、アプリケーションの configureMonologUsing メソッドを呼び出す必要があります。 $ app 変数がファイルによって返される直前に、bootstrap/app.php ファイル内で次のように記述します。
return $app;
ただし、ChearyChat への送信に加えて、ログ ファイルへのデフォルトの記録方法も保持する必要があるため、これを行わずに、ChearyChatHandler を例外ハンドラ。
app/Exceptions/Handler.php を変更し、レポート メソッドに次のコードを追加します:
<?phpnamespace App\Exceptions;use App\BearyChatHandler; ......use Log;class Handler extends ExceptionHandler { ...... public function report(Exception $e) { $monolog = Log::getMonolog(); $monolog->pushHandler(new BearyChatHandler('https://yourhookurl','Laravel日志机器人')); return parent::report($e); }......}
さて、意図的にコードにエラーを記述し、BearyChat がエラー ログを受信するかどうかを確認します。
転載する場合はその旨を明記してください: Ryan は新人です | LNMP テクノロジー スタック ノートから転載
この記事が非常に役立つと思われる場合は、ご褒美をあげてみてはいかがでしょうか

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック

Laravelは、直感的なフラッシュメソッドを使用して、一時的なセッションデータの処理を簡素化します。これは、アプリケーション内に簡単なメッセージ、アラート、または通知を表示するのに最適です。 データは、デフォルトで次の要求のためにのみ持続します。 $リクエスト -

PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

Laravelは簡潔なHTTP応答シミュレーション構文を提供し、HTTP相互作用テストを簡素化します。このアプローチは、テストシミュレーションをより直感的にしながら、コード冗長性を大幅に削減します。 基本的な実装は、さまざまな応答タイプのショートカットを提供します。 Illuminate \ support \ facades \ httpを使用します。 http :: fake([[ 'google.com' => 'hello world'、 'github.com' => ['foo' => 'bar']、 'forge.laravel.com' =>

PHPロギングは、Webアプリケーションの監視とデバッグ、および重要なイベント、エラー、ランタイムの動作をキャプチャするために不可欠です。システムのパフォーマンスに関する貴重な洞察を提供し、問題の特定に役立ち、より速いトラブルシューティングをサポートします

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

記事では、PHP 5.3で導入されたPHPの後期静的結合(LSB)について説明し、より柔軟な継承を求める静的メソッドコールのランタイム解像度を可能にします。 LSBの実用的なアプリケーションと潜在的なパフォーマ

この記事では、フレームワークにカスタム機能を追加し、アーキテクチャの理解、拡張ポイントの識別、統合とデバッグのベストプラクティスに焦点を当てています。
