この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 31840|答える: 2

[出典] Spring CloudはすべてのリクエストインターフェースログをMongoDBに記録します

[リンクをコピー]
掲載地 2021/08/15 21:47:53 | | | |
マイクロサービス開発において、ログ記録は非常に基本的な作業であり、インターフェースのリクエストログ情報を記録することで、問題のトラブルシューティングや再現に役立ちます。 ログ内容にはリンク、リクエストメソッド、useragent、ヘッダー、現在のマイクロサービスノードマシンIP、ノードマシン名、実行環境、リクエスターIP、時間消費量、その他の情報が含まれます。

Spring CloudフレームワークのFilter blockerを使えば、すべてのインターフェースのリクエスト情報レコードを傍受し、MongoDBにリクエストレコードを永続化できます。



インターフェースログ構造

まず新しいオブジェクトを作成し、ログの構造を定義します。コードは以下の通りです:

対数フィルター

新しいRequestLoggerFilterフィルターを作成し、Filterインターフェースを継承してdoFilterメソッドを実装します。このフィルターは最も高い優先度を持ち、@Order注釈を通じてフィルターの優先度を設定できます。フィルターはPOST/PUTコミットをログにします(マルチパート/フォームデータファイルのコミットレコードは除外)、コードは以下の通りです:

Spring CloudはクライアントのIPアドレスを取得します
https://www.itsvse.com/thread-10022-1-1.html

Spring Cloud FilterはContentCachingRequestWrapperを通じて要求されたコンテンツを取得します
https://www.itsvse.com/thread-10030-1-1.html

スプリングブーツのハンドラーインターセプターインターセプター
https://www.itsvse.com/thread-10001-1-1.html

ログはMongoDBに永続します

インターフェースの通常の使用に影響しないように、インターフェースログはスレッドセーフキューに切り捨てられ、プログラムはスレッドを開きます。スレッドはキュー内のデータを消費し、MongoDBに保存し、mavenを使って依存関係を導入します。

CentOS 7インストール mongodb 5.0.1 チュートリアル
https://www.itsvse.com/thread-10025-1-1.html

Linuxは正しくmongodbデータベースを閉じます
https://www.itsvse.com/thread-10021-1-1.html
mongodbの詳細については、org.springframework.boot.autoconfigure.mongo.MongoProperties をご覧ください。

application.yml 構成は以下の通りです:

URIフォーマット:username: root, password: aaaaaaa, データベースアドレス: 127.0.0.1, ポート番号: 27017, データベース名: test.
例えば:mongodb://root:aaaaaa@127.0.0.1:27017/test

もしユーザー名またはパスワードには特別な記号が含まれているため、URLエンコーディングを使用してください、そうしないとエラーが報告されます!

MongoTemplateを呼び出して、以下のコードでデータをデータベースに永続化します:

(終わり)





先の:OpenSSLはビザ書類からIISやSLBへ展開されます
次に:.NETプラグインのための「動的置換」
 地主| 掲載地 2021/11/18 11:14:19 |
以下の図に示すように応答ログを記録します:





掲載地 2022/10/14 15:19:47 |
ちょうど間に合って勉強した
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com