feat: GitHub Event Scanner - Echtzeit-Monitoring öffentlicher Pushes
- Neuer GitHubEventScannerService (BackgroundService) - Pollt /events API alle 30s, filtert PushEvents - Lädt Head-Commit-Diffs, scannt nach Key-Patterns - Ringbuffer (10k IDs) für Event-Deduplication - Gefundene Keys werden sofort geprüft (AnthropicKeyChecker) - Rate-Limit-Handling (403/429 → Pause bis Reset) - Feature-Toggle in Server-Einstellungen (GitHubEventScanner) - Status-Endpoint + Log-Endpoint (/api/admin/api-keys/event-scanner/*) - Live-Status in API-Keys-Seite mit klappbarem Log - Auto-Refresh alle 30s - Plans/ in .gitignore
This commit is contained in:
1 parent
7352438b11
commit
eb8844a4f1
9 files changed
+578
-2
No files matched your search
@@ -107,6 +107,10 @@ builder.Services.AddHostedService<CronjobService>(sp => sp.GetRequiredService<Cr
|
||||
builder.Services.AddSingleton<KeyScannerService>();
|
||||
builder.Services.AddHostedService<KeyScannerService>(sp => sp.GetRequiredService<KeyScannerService>());
|
||||
|
||||
// GitHub Event Scanner (Echtzeit-Monitoring öffentlicher Pushes)
|
||||
builder.Services.AddSingleton<GitHubEventScannerService>();
|
||||
builder.Services.AddHostedService<GitHubEventScannerService>(sp => sp.GetRequiredService<GitHubEventScannerService>());
|
||||
|
||||
var app = builder.Build();
|
||||
toolService.SetHttpClientFactory(app.Services.GetRequiredService<IHttpClientFactory>());
|
||||
app.Services.GetRequiredService<AnthropicService>().SetTelegramService(app.Services.GetRequiredService<TelegramService>());
|
||||
|
||||
Reference in new issue
Block a user