mirror of
https://github.com/openobserve/openobserve.git
synced 2026-11-06 00:09:22 +00:00
## 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