ASP.NET Core は NLog を使用してログを ELK システムにプッシュし、統合されたログ収集と分析を行います。
ログ収集システム (I) Windows インストール ELK 7.10.2 チュートリアル https://www.itsvse.com/thread-9539-1-1.html まずは、効果イメージを以下のように見てみよう:
以下のように、NLog.Web.AspNetCoreを参照する新しいASP.NET Core 3.1のWebプロジェクトを作成します:
以下の構成で新しいnlog.config設定ファイルを作成します:
プロジェクトのProgramファイルに、以下の変更を加えてnlogを追加する:
ログを送信するのにUDPを使っているのに、なぜファイルに書き込む必要があるのか?UDPを使ってログを送信しているのに、なぜファイルに書き込む必要があるのでしょうか? UDPは信頼性が低く、すべてのログデータがELKシステムに書き込まれることを100%保証できないため、ローカルディスクに保存することもバックアップに相当します。
ローカルログは最大30日間保存できます。 30日以上前のログは自動的にクリーンアップされますが、これは設定ファイルで設定できます。
Logstashは以下のように新しいtest.conf設定ファイルを作成する:
以下のコマンドでLogstashを起動する:
HomeControllerコントローラで、ロギングフレームワークを呼び出し、ブラウザからIndexページにアクセスすると、次のコードのようにELKシステムに10,000のログが書き込まれます:
Kibana インターフェースで、「Stack Management」をクリックし、「Index Schema」を選択し、右上の「Create Index Schema」をクリックし、以下のように「itsvse-logs-*」と記入する:
この後、Kibana の Discover インターフェースで記録したログを見ることができます。
最後にソースコードを添付します:
ゲストの方、この投稿の隠された内容を見たい場合は、 以下に返信してください。
|