視覚的ログコンポーネント:LogDashboard:

はじめに
今日は、ログ視覚化コンポーネントLogDashboardを紹介します。サードパーティのプロセスをインストールする必要はなく、プロジェクトに対応するNuGetパッケージをインストールし、数行のコードを追加するだけで、Webページを持つログ管理パネルを実現できます。とても良いですよ。
以下は公式の紹介です:
公式ドキュメント:https://doc.logdashboard.net/
LogDashboardはGitHubでオープンソースのaspnetcoreプロジェクトです。開発者がプロジェクト実行中に発生したエラーを迅速に確認し、問題をトラブルシューティングするのに役立つことを目的としています。通常、プロジェクトではnlogやlog4netなどのログコンポーネントを使用します。これらはログ記録機能が非常に強力で完全ですが、一般的にはtxtファイルやデータベースにログを書き込みます。しかし、メモ帳やSQLでログを確認するのは簡単ではありません。
LogDashboardは、簡単かつ迅速にログを確認できるパネルを提供します。
LogDashboardはaspnetcore 2.x ~ aspnetcore3.x プロジェクトに対応しており、aspnetcoreのミドルウェア技術を使用して開発されています。軽量で高速です。
OK、この記事では0からASP.NET Core Web APIの新しいプロジェクトを作成し、ログコンポーネントSerilogを追加し、最後にLogDashboardを組み合わせてこのプロジェクトを完成させます。
LogDashboardを使用することで、普段の作業における問題のトラブルシューティング速度が大幅に向上するでしょう。
手順:
- ASP.NET Core Web API プロジェクトを作成
Serilogログコンポーネントを追加LogDashboardを追加- 視覚的ログのデモ
ここから実践開始
1. ASP.NET Core Web API プロジェクトを作成
この手順は非常に簡単です。VS 2019を使用して、ASP.NET Core Web APIプロジェクトを作成し、名前をLogDashboardDemoとします。
2. Serilog ログコンポーネントを追加
2.1 NuGet で Serilog パッケージをインストール
Install-Package Serilog.AspNetCore
2.2 Program.cs に Serilog 設定を追加
public class Program
{
public static void Main(string[] args)
{
string logOutputTemplate = "{Timestamp:HH:mm:ss.fff zzz} || {Level} || {SourceContext:l} || {Message} || {Exception} ||end {NewLine}";
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.MinimumLevel.Override("Default", LogEventLevel.Information)
.MinimumLevel.Override("Microsoft", LogEventLevel.Error)
.MinimumLevel.Override("Microsoft.Hosting.Lifetime", LogEventLevel.Information)
.Enrich.FromLogContext()
.WriteTo.Console(theme: Serilog.Sinks.SystemConsole.Themes.AnsiConsoleTheme.Code)
.WriteTo.File($"{AppContext.BaseDirectory}Logs/Dotnet9.log", rollingInterval: RollingInterval.Day, outputTemplate: logOutputTemplate)
.CreateLogger();
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.UseSerilog()
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});
}
コード内のログ出力フォーマットに注意してください。ログセパレータは「||」を使用しています。これはLogDashboardコンポーネントの推奨です。もちろん変更も可能で、詳細な設定はLogDashboardのドキュメントを参照してください。
2.3 ログコンポーネントのインストールを確認
Startup.cs にテストログを追加:
public void ConfigureServices(IServiceCollection services)
{
Log.Information("ConfigureServices");
Log.Error("テストSerilogエラーログ追加");
Log.Fatal("テストSerilog重大ログ追加");
// ....
}
プロジェクトを実行:
出力ディレクトリにログファイルが生成されます:\LogDashboardDemo\bin\Debug\net6.0\Logs\Dotnet920210417.log
08:37:27.884 +08:00 || Information || || ConfigureServices || ||end
08:37:27.964 +08:00 || Error || || テストSerilogエラーログ追加 || ||end
08:37:27.965 +08:00 || Fatal || || テストSerilog重大ログ追加 || ||end
08:37:28.154 +08:00 || Information || || Configure || ||end
08:37:28.423 +08:00 || Information || Microsoft.Hosting.Lifetime || Now listening on: "http://localhost:5000" || ||end
08:37:28.427 +08:00 || Information || Microsoft.Hosting.Lifetime || Application started. Press Ctrl+C to shut down. || ||end
08:37:28.427 +08:00 || Information || Microsoft.Hosting.Lifetime || Hosting environment: "Development" || ||end
08:37:28.428 +08:00 || Information || Microsoft.Hosting.Lifetime || Content root path: "C:\Users\Administrator\Desktop\LogDashboardDemo" || ||end
コンソール出力:

これでログコンポーネントの追加が完了しました。次のステップに進みます。
3. LogDashboard を追加
3.1 NuGet で LogDashboard パッケージをインストール
Install-Package LogDashboard
3.2 LogDashboard を設定
この手順は非常に簡単です。本当に簡単です。Startup.cs を開き、以下のコードを追加します:
public void ConfigureServices(IServiceCollection services)
{
services.AddLogDashboard();
// ...
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
app.UseLogDashboard();
// ...
}
これで完了です。LogDashboardの使用はこれほど簡単です。
4. 視覚的ログのデモ
プロジェクトを実行し、ブラウザのアドレスバーに http://localhost:5000/logdashboard と入力すると、ログ管理パネルが表示されます。短い動画でデモをご覧ください: