feat: log forwarding v2 — accept List<LogEntry>, add source field

Replace LogBatch wrapper with raw List<LogEntry> on the ingestion endpoint.
Add source column to ClickHouse logs table and propagate it through the
storage, search, and HTTP layers (LogSearchRequest, LogEntryResult,
LogEntryResponse, LogQueryController).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
hsiegeln
2026-04-12 10:25:46 +02:00
parent 4b18579b11
commit b03dfee4f3
7 changed files with 33 additions and 15 deletions

View File

@@ -13,6 +13,7 @@ import java.util.List;
* @param exchangeId Camel exchange ID filter
* @param logger logger name substring filter
* @param environment optional environment filter (e.g. "dev", "staging", "prod")
* @param source optional source filter: "app" or "agent"
* @param from inclusive start of time range (required)
* @param to inclusive end of time range (required)
* @param cursor ISO timestamp cursor for keyset pagination
@@ -27,6 +28,7 @@ public record LogSearchRequest(
String exchangeId,
String logger,
String environment,
String source,
Instant from,
Instant to,
String cursor,

View File

@@ -5,4 +5,4 @@ import java.util.Map;
public record LogEntryResult(String timestamp, String level, String loggerName,
String message, String threadName, String stackTrace,
String exchangeId, String instanceId, String application,
Map<String, String> mdc) {}
Map<String, String> mdc, String source) {}