Files
openobserve/web/run_all.sh
T
ByteBaker 881a6611c0 feat: simplify service discovery feature (#10946)
## Core changes

- **Schema**: `service_streams_dimensions` table dropped entirely.
Service rows gain `disambiguation JSONB`, `set_id`, and
`field_name_mapping JSONB`. Incidents: `correlation_key VARCHAR`
replaced with `group_values JSONB`.
- **Migrations**: 6 new sea-orm DSL migrations (raw SQL strings removed
for cross-backend consistency; GIN index creation remains raw SQL — no
native sea-orm support).
- **`ServiceIdentityConfig`**: `fqn_priority_dimensions` replaced with
`distinguish_by` list. `max_total_service_rows` renamed from
`max_total_services` (unit = rows, not logical services).
- **Meta types**: `CorrelationConfidence`, `ConfidenceLevel`,
`DimensionMatchDetail` removed from `correlation.rs`.
`SemanticFieldGroup` → `FieldAlias` (fields are aliases to group IDs,
not full group descriptors).
- **Handlers**: Authorization checks added to list, correlate, and
get-config endpoints. `_grouped` endpoint removed; `_recommendations`
endpoint added.
- **Cleanup job**: Leader election added (smallest UUID ingester wins);
hardcoded 1h interval + 30-day stale threshold replace the removed
configurable env vars.
- **Processing mode removed**: Compactor-mode path removed; single
ingester-only path remains.
- **UI**: FQN priority config replaced with `distinguish_by` field
selector. New `ServiceIdentitySetup.vue` guided setup flow.
`is_scope`/`is_stable`/`normalize` toggles removed from semantic group
editor. ~13-14 FQN-related i18n keys removed from each of 12 locale
files.

## Env var changes

Removed (15):
- `O2_SERVICE_STREAMS_SAMPLE_EVERY_NTH_STREAM` → renamed (see below)
- `O2_SERVICE_STREAMS_SAMPLE_EVERY_NTH_FILE`
- `O2_SERVICE_STREAMS_RECORD_SAMPLE_PERCENT`
- `O2_SERVICE_STREAMS_STABLE_DIMENSION_THRESHOLD`
- `O2_SERVICE_STREAMS_TRANSIENT_DIMENSION_THRESHOLD`
- `O2_SERVICE_STREAMS_MAX_STREAMS_PER_SERVICE`
- `O2_SERVICE_STREAMS_MIN_CORRELATION_CONFIDENCE`
- `O2_SERVICE_STREAMS_PROCESSING_MODE`
- `O2_SERVICE_STREAMS_BATCH_MAX_SERVICES`
- `O2_SERVICE_STREAMS_CLEANUP_INTERVAL_MINS`
- `O2_SERVICE_STREAMS_STALE_THRESHOLD_HOURS`
- `O2_SERVICE_STREAMS_MAX_TOTAL_DIMENSIONS`
- `O2_SERVICE_STREAMS_MAX_TOTAL_VALUES`
- `O2_SERVICE_STREAMS_CHANNEL_CAPACITY`
- `O2_SERVICE_STREAMS_MAX_FLUSH_RETRIES`

Renamed:
- `O2_SERVICE_STREAMS_SAMPLE_EVERY_NTH_STREAM` →
`O2_SERVICE_STREAMS_SAMPLE_RATE` (default: 10)

Kept:
- `O2_SERVICE_STREAMS_ENABLED` (default: false)
- `O2_SERVICE_STREAMS_SAMPLE_WINDOW_SECS` (default: 300)
- `O2_SERVICE_STREAMS_BATCH_FLUSH_INTERVAL_SECS` (default: 600)
- `O2_SERVICE_STREAMS_MAX_TOTAL_SERVICES` (default: 500,000)

Added:
- `O2_SERVICE_STREAMS_TRACKED_ALIAS_IDS` — comma-separated alias group
IDs tracked system-wide by default; "service" always implicit

Design at: designs/correlation/proposal-v2
2026-03-30 13:47:40 +05:30

26 lines
825 B
Bash

#!/bin/bash
# Kill any existing processes on these ports to prevent conflicts
lsof -ti:8000 | xargs kill -9 2>/dev/null
lsof -ti:8081 | xargs kill -9 2>/dev/null
echo "Starting Backend Server (FastAPI + GGUF Model)..."
cd "$(dirname "$0")/chat-server"
uv run uvicorn server:app --host 0.0.0.0 --port 8000 &
SERVER_PID=$!
echo "Starting Frontend (React Native Expo)..."
cd "../chat-app"
npx expo start --clear &
EXPO_PID=$!
echo "--------------------------------------------------------"
echo "Services are starting!"
echo "- Backend is running on port 8000"
echo "- Frontend QR code will appear above to scan in Expo Go"
echo "Press Ctrl+C to stop both services."
echo "--------------------------------------------------------"
# Wait for both processes to finish (or until Ctrl+C is pressed)
wait $SERVER_PID $EXPO_PID