.NET Aspire Seq 整合
在本文中,您將瞭解如何使用 .NET AspireSeq 整合來新增將記錄和追蹤匯出至 SeqServer的 OpenTelemetry 通訊協定(OTLP)匯出器。 整合支援透過配置在應用程式重新啟動時持續保存記錄和追蹤。
開始
若要開始使用 .NET AspireSeq 整合,請安裝 📦Aspire。Seqclient-consuming 專案中的 NuGet 套件,也就是使用 Seqclient的應用程式專案。
dotnet add package Aspire.Seq
如需詳細資訊,請參閱 dotnet add package 或 管理 .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");
Seq 在 .NET Aspire 清單中
Seq 不應該是 .NET Aspire 部署指令清單的一部分,因此進行了串接呼叫ExcludeFromManifest
。 建議您在 .NET Aspire之外設置安全的生產 Seqserver。
持久性記錄和追蹤
在 AppHost 專案中向數據目錄註冊 Seq,以在應用程式重新啟動時保留 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 .NET Aspire 整合會自動設定記錄、追蹤和度量組態,有時稱為 可觀察性要素。 如需整合可觀察性和遙測的詳細資訊,請參閱 .NET.NET Aspire 整合概觀。 視支援服務而定,某些整合可能只支援其中一些功能。 例如,某些整合支援記錄和追蹤,但不支援計量。 您也可以使用 組態 一節中呈現的技術來停用遙測功能。
伐木
.NET Aspire Seq 整合會使用下列記錄類別:
Seq