fix: accept both 'application' and 'group' query params in search API
All checks were successful
CI / build (push) Successful in 1m22s
CI / cleanup-branch (push) Has been skipped
CI / docker (push) Successful in 50s
CI / deploy (push) Successful in 37s
CI / deploy-feature (push) Has been skipped

The backend was renamed from group→application but Docker build cache
may serve old code. Accept 'group' as a fallback alias so the UI works
with both old and new backends. Applies to GET /search/executions,
/search/stats, and /search/stats/timeseries.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
hsiegeln
2026-03-24 08:25:05 +01:00
parent 180514a039
commit c33e899be7

View File

@@ -52,12 +52,14 @@ public class SearchController {
@RequestParam(required = false) String agentId,
@RequestParam(required = false) String processorType,
@RequestParam(required = false) String application,
@RequestParam(required = false) String group,
@RequestParam(defaultValue = "0") int offset,
@RequestParam(defaultValue = "50") int limit,
@RequestParam(required = false) String sortField,
@RequestParam(required = false) String sortDir) {
List<String> agentIds = resolveApplicationToAgentIds(application);
String app = application != null ? application : group;
List<String> agentIds = resolveApplicationToAgentIds(app);
SearchRequest request = new SearchRequest(
status, timeFrom, timeTo,
@@ -65,7 +67,7 @@ public class SearchController {
correlationId,
text, null, null, null,
routeId, agentId, processorType,
application, agentIds,
app, agentIds,
offset, limit,
sortField, sortDir
);
@@ -92,9 +94,10 @@ public class SearchController {
@RequestParam Instant from,
@RequestParam(required = false) Instant to,
@RequestParam(required = false) String routeId,
@RequestParam(required = false) String application) {
@RequestParam(required = false) String application,
@RequestParam(required = false) String group) {
Instant end = to != null ? to : Instant.now();
List<String> agentIds = resolveApplicationToAgentIds(application);
List<String> agentIds = resolveApplicationToAgentIds(application != null ? application : group);
if (routeId == null && agentIds == null) {
return ResponseEntity.ok(searchService.stats(from, end));
}
@@ -108,9 +111,10 @@ public class SearchController {
@RequestParam(required = false) Instant to,
@RequestParam(defaultValue = "24") int buckets,
@RequestParam(required = false) String routeId,
@RequestParam(required = false) String application) {
@RequestParam(required = false) String application,
@RequestParam(required = false) String group) {
Instant end = to != null ? to : Instant.now();
List<String> agentIds = resolveApplicationToAgentIds(application);
List<String> agentIds = resolveApplicationToAgentIds(application != null ? application : group);
if (routeId == null && agentIds == null) {
return ResponseEntity.ok(searchService.timeseries(from, end, buckets));
}