integrace .NET AspireSeq
V tomto článku se dozvíte, jak pomocí integrace .NET AspireSeq přidat exportéry OpenTelemetry Protocol (OTLP), které odesílají logy a sledování do SeqServer. Integrace podporuje trvalé protokoly a sledování napříč restartováními aplikací díky konfiguraci.
Začněte
Pokud chcete začít s integrací .NET AspireSeq, nainstalujte balíček NuGet 📦Aspire. BalíčekSeq nainstalujte v projektu využívajícím client, tj. v projektu aplikace, která používá Seqclient.
dotnet add package Aspire.Seq
Další informace najdete v tématu dotnet add package nebo Řízení závislostí balíčků v aplikacích .NET.
Příklad využití
V souboru Program.cs vašich projektů zavolejte metodu rozšíření AddSeqEndpoint
, která zaregistruje exportéry protokolu OpenTelemetry, aby odesílaly protokoly a trasování do Seq a řídicího panelu .NET Aspire. Metoda přebírá parametr názvu připojení.
builder.AddSeqEndpoint("seq");
Využití hostitele aplikace
Pokud chcete modelovat prostředek Seq v hostiteli aplikace, nainstalujte balíček NuGet 📦Aspire.Hosting.Seq v projektu hostitele aplikace.
dotnet add package Aspire.Hosting.Seq
V hostitelském projektu aplikace zaregistrujte databázi Seq a pomocí následujících metod využijte připojení:
var builder = DistributedApplication.CreateBuilder(args);
var seq = builder.AddSeq("seq")
.ExcludeFromManifest();
var myService = builder.AddProject<Projects.MyService>()
.WithReference(seq);
Předchozí kód zaregistruje Seqserver a rozšíří jeho konfiguraci.
Důležitý
Musíte přijmout licenční smlouvu s koncovým uživatelem Seq, aby Seq zahájilo.
V Program.cs souboru projektu MyService nakonfigurujte protokolování a trasování tak, aby Seq pomocí následujícího kódu:
builder.AddSeqEndpoint("seq");
Seq v manifestu .NET Aspire
Seq by neměl být součástí manifestu nasazení .NET Aspire, a proto došlo ke zřetězenému volání ExcludeFromManifest
. Doporučujeme, abyste nastavili bezpečný produkční Seqserver mimo .NET Aspire.
Stálé protokoly a sledování
Zaregistrujte Seq s datovým adresářem v projektu AppHost, abyste si zachovali data a konfiguraci Seqv rámci restartování aplikace.
var seq = builder.AddSeq("seq", seqDataDirectory: "./seqdata")
.ExcludeFromManifest();
Zadaný adresář již musí existovat.
Konfigurace
Integrace .NET AspireSeq poskytuje možnosti konfigurace připojení k Seq.
Použití zprostředkovatelů konfigurace
Integrace .NET AspireSeq podporuje Microsoft.Extensions.Configuration. Načte SeqSettings
z konfigurace pomocí klíče Aspire:Seq
. Příklad appsettings.json, který konfiguruje některé z možností:
{
"Aspire": {
"Seq": {
"DisableHealthChecks": true,
"ServerUrl": "http://localhost:5341"
}
}
}
Použití vložených delegátů
Delegáta Action<SeqSettings> configureSettings
můžete použít k nastavení některých nebo všech možností přímo v kódu, například k zakázání kontrol stavu:
builder.AddSeqEndpoint("seq", static settings =>
{
settings.DisableHealthChecks = true;
settings.ServerUrl = "http://localhost:5341"
});
Kontroly stavu
Ve výchozím nastavení integrace .NET.NET Aspire umožní kontrolu stavu pro všechny služby. Další informace naleznete v přehledu integrací .NET.NET Aspire.
Integrace .NET AspireSeq zpracovává následující:
- Integruje se s koncovým bodem
/health
HTTP, který určuje, že všechny registrované kontroly stavu musí úspěšně projít, aby byla aplikace považována za připravenou přijímat síťový provoz.
Pozorovatelnost a telemetrie
.NET .NET Aspire integrace automaticky nastaví konfigurace protokolování, trasování a metrik, které jsou někdy označovány jako pilíře pozorovatelnosti. Další informace o pozorovatelnosti a telemetrii integrace najdete v přehledu integrace .NET.NET Aspire. V závislosti na zálohovací službě můžou některé integrace podporovat pouze některé z těchto funkcí. Například některé integrace podporují protokolování a trasování, ale ne metriky. Funkce telemetrie je také možné zakázat pomocí technik uvedených v části Konfigurace.
Protokolování
Integrace .NET AspireSeq používá následující kategorie protokolů:
Seq