Laravelアプリケーションのログ記録に取り組んでいます。amdは後で検索するためにSQSにデータを送信する予定でした。しかし、プロダクションサーバーからAWSキューにジョブをディスパッチしたいのですが、キューをリッスンする別のログサーバー上でキューを操作してください。Laravel - 1つのサーバーでジョブが処理され、別のサーバーで処理される
私はキューを聴くようにキューワーカーを設定する方法を理解していますが、Laravelのジョブは自己処理です。したがって、LoggingサーバーのワーカーがSQSからメッセージを取得すると、同じ名前空間(同じClass名を持つ)のジョブを探して処理します。これを別の方法で処理する方法はありますか、単にプロダクション・サーバー上のジョブ・ディスパッチャーと同じ、ジョブ・ハンドラーにロギング・サーバーの名前を付けるだけです。
ええ、私はその部分を理解しています。それは不思議に思っているロギングサーバー上での仕事の処理です。私のプロダクションコードに 'SendReminderEmail'というジョブがあった場合、私のロギングサーバー(キューを実行している)には' SendReminderEmail'というジョブが必要になり、暗黙的に処理されるようになります。それは正確ですか? – djt
基本的に、laravelは、キュープロバイダにプッシュする前にJobオブジェクトをシリアル化し、もう一方の端で、シリアル化されたデータとクラス定義を使用して元のオブジェクトを再作成します。だから両方のサーバーで全く同じクラスを持つ必要があります。 – Atrakeur
を参照してください。それは残念です。人々はこれをどのように扱いますか?私は、ロギングサーバ上でプロダクションレポ全体を複製することは望ましくありません。なぜなら、膨大な膨大な量の膨大なものになるからです。 – djt