Jakapil.Capture
1.0.0
See the version list below for details.
dotnet add package Jakapil.Capture --version 1.0.0
NuGet\Install-Package Jakapil.Capture -Version 1.0.0
<PackageReference Include="Jakapil.Capture" Version="1.0.0" />
<PackageVersion Include="Jakapil.Capture" Version="1.0.0" />
<PackageReference Include="Jakapil.Capture" />
paket add Jakapil.Capture --version 1.0.0
#r "nuget: Jakapil.Capture, 1.0.0"
#:package Jakapil.Capture@1.0.0
#addin nuget:?package=Jakapil.Capture&version=1.0.0
#tool nuget:?package=Jakapil.Capture&version=1.0.0
Jakapil.Capture
Jakapil Capture, çalışan .NET API'lerinin HTTP trafiğini yakalayan bir ASP.NET Core middleware SDK'sıdır. Uygulamanıza tek satırlık bir middleware olarak eklenir; gelen istekleri, dönen yanıtları ve korelasyon sinyallerini arka planda, istek yolunu (request path) bloke etmeden yakalar ve bir Jakapil collector'a dışa aktarır (export).
Yakalanan trafik, Jakapil tarafında kendi kendini doğrulayan test senaryolarına dönüştürülür. Middleware üretim yükü altında güvenli olacak şekilde tasarlanmıştır: yanıt daima istemciye tamponsuz akar, capture kopyası sınırlıdır ve kuyruk backpressure altında en eski girişleri düşürür (istek hattını asla bloke etmez).
Kurulum
dotnet add package Jakapil.Capture
Kullanım
Program.cs içinde servisi kaydedin ve middleware'i pipeline'a ekleyin:
builder.Services.AddJakapilCapture(
ingestKey: builder.Configuration["Jakapil:Capture:IngestKey"]!,
collectorUri: "https://collector.jakapil.example");
// ...
app.UseJakapilCapture();
ingestKey sizin ingest anahtarınızdır ve collector'a X-Jakapil-Key başlığında olduğu gibi
gönderilir — bu yüzden yalnızca ortam değişkeni / secret üzerinden verilmelidir, koda gömülmez.
collectorUri yakalanan etkileşimlerin gönderileceği collector adresidir.
İnce ayar gerekirse Action<JakapilCaptureOptions> alan overload'ı kullanabilirsiniz:
builder.Services.AddJakapilCapture(options =>
{
options.IngestKey = builder.Configuration["Jakapil:Capture:IngestKey"]!;
options.CollectorUri = "https://collector.jakapil.example";
options.SampleRate = 0.25;
});
Yapılandırma seçenekleri
| Seçenek | Tür | Varsayılan | Açıklama |
|---|---|---|---|
Enabled |
bool |
true |
Ana açma/kapama anahtarı. false iken middleware saf geçiştir (passthrough). |
SampleRate |
double |
1.0 |
Yakalanacak isteklerin oranı, [0, 1]. 1.0 = her şeyi yakala. |
CollectorUri |
string? |
null |
Yakalanan etkileşimlerin gönderileceği collector'ın kök adresi. Boş bırakılırsa export işçisi idle kalır. |
IngestKey |
string? |
null |
X-Jakapil-Key başlığında collector'a gönderilen ham ingest anahtarı. |
MaxInlineBodyBytes |
int |
1048576 (1 MiB) |
Bu boyut ya da daha küçük gövdeler satır-içi (inline) yakalanır; daha büyükler kesilir ve Truncated işaretlenir. |
Diğer ayarlar (MaxCapturedResponseBytes, StreamingContentTypes, QueueCapacity,
SensitiveHeaderNames, CorrelationHeaderNames, ExportBatchMaxItems,
ExportFlushIntervalSeconds) makul varsayılanlarla gelir; ayrıntılar için
JakapilCaptureOptions XML doküman yorumlarına bakın.
Lisans
MIT
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Jakapil.Capture.Contracts (>= 1.0.0)
-
net8.0
- Jakapil.Capture.Contracts (>= 1.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.