.NET Aspire Seq 統合
この記事では、.NET AspireSeq 統合を使用して、SeqServerにログとトレースを送信する OpenTelemetry Protocol (OTLP) エクスポーターを追加する方法について説明します。 統合では、構成を介したアプリケーションの再起動を通じて永続的なログとトレースがサポートされます。
作業の開始
.NET Aspire Seq 統合を開始するには、📦Aspireをインストールします。clientを使用するプロジェクト (つまり、Seqclientを使用するアプリケーションのプロジェクト) に NuGet パッケージをSeq します。
dotnet add package Aspire.Seq
詳細については、「dotnet パッケージ の追加」または「.NET アプリケーションでのパッケージの依存関係の管理」を参照してください。
使用例
プロジェクトの Program.cs ファイルで、AddSeqEndpoint
拡張メソッドを呼び出してプロトコル エクスポーター OpenTelemetry 登録し、ログとトレースを Seq と .NET Aspire ダッシュボードに送信します。 このメソッドは、接続名パラメーターを受け取ります。
builder.AddSeqEndpoint("seq");
アプリ ホストの使用状況
アプリホストで Seq リソースをモデル化するには、📦Aspire.Hosting.Seq NuGet パッケージを アプリホスト プロジェクトにインストールします。
dotnet add package Aspire.Hosting.Seq
アプリ ホスト プロジェクトで、Seq データベースを登録し、次の方法を使用して接続を使用します。
var builder = DistributedApplication.CreateBuilder(args);
var seq = builder.AddSeq("seq")
.ExcludeFromManifest();
var myService = builder.AddProject<Projects.MyService>()
.WithReference(seq);
上記のコードは、Seqserver を登録し、その構成を伝達します。
大事な
Seq を開始するには、Seq エンド ユーザー ライセンス契約 に同意する必要があります。
MyService プロジェクトの Program.cs ファイルで、次のコードを使用してログ記録とトレースを Seq するように構成します。
builder.AddSeqEndpoint("seq");
.NET Aspire マニフェストの Seq
Seq は、.NET Aspire 配置マニフェストの一部でないため、ExcludeFromManifest
へのチェーン呼び出しになります。
.NET Aspireの外部で安全な運用 Seqserver を設定することをお勧めします。
永続的なログとトレース
Seq を AppHost プロジェクトのデータ ディレクトリに登録して、アプリケーションの再起動後も Seqのデータと構成を保持します。
var seq = builder.AddSeq("seq", seqDataDirectory: "./seqdata")
.ExcludeFromManifest();
指定されたディレクトリは既に存在している必要があります。
設定
.NET Aspire Seq 統合には、Seqへの接続を構成するためのオプションが用意されています。
構成プロバイダーを使用する
.NET Aspire
Seq 統合では、Microsoft.Extensions.Configurationがサポートされます。
Aspire:Seq
キーを使用して、構成から SeqSettings
を読み込みます。 いくつかのオプションを構成する appsettings.json の例:
{
"Aspire": {
"Seq": {
"DisableHealthChecks": true,
"ServerUrl": "http://localhost:5341"
}
}
}
インライン デリゲートを使用する
Action<SeqSettings> configureSettings
デリゲートを渡して、コードから正常性チェックを無効にするなど、一部またはすべてのオプションをインラインで設定できます。
builder.AddSeqEndpoint("seq", static settings =>
{
settings.DisableHealthChecks = true;
settings.ServerUrl = "http://localhost:5341"
});
正常性チェック
既定では、.NET.NET Aspire 統合により、すべてのサービス 正常性チェック が有効になります。 詳細については、.NET.NET Aspire 統合の概要を参照してください。
.NET Aspire Seq 統合では、次の処理が行われます。
-
/health
HTTP エンドポイントと統合されます。このエンドポイントは、アプリがトラフィックを受け入れる準備ができていると見なされるために、登録されているすべての正常性チェックに合格する必要があります。
可観測性とテレメトリ
伐採
.NET Aspire Seq 統合では、次のログ カテゴリが使用されます。
Seq
参照
.NET Aspire