mirror of
https://github.com/openobserve/openobserve.git
synced 2026-11-05 16:10:43 +00:00
## Summary - remove the HTTP request/model compatibility re-exports introduced by the domain crate split - migrate router, OpenAPI, enterprise action-server, and integration-test callers to the crates that own each API - remove the ingest Content-Type re-export and declare the direct root/test dependencies - delete the pure `handler::http::models` facade module ## Validation - `cargo fmt --all -- --check` - `cargo clippy -p openobserve-api-ingest -p openobserve-api-http -- -D warnings` - `cargo test --test integration_test --no-run` - `cargo check -p openobserve --no-default-features` - enterprise overlay: `cargo test --offline --workspace --no-default-features --features enterprise --no-run` - cloud overlay: `cargo test --offline --workspace --no-default-features --features cloud --no-run` - `git diff --check`
OpenObserve API crates
All API-facing crates live under this directory:
common: shared HTTP authentication, extractors, and transport types.grpc: gRPC services and server transport.http: HTTP routing, OpenAPI, middleware, and composition of the domain crates.ingest: telemetry ingestion APIs.management: control-plane APIs such as alerts, dashboards, users, organizations, streams, and platform/node status.pipelines: pipelines, functions, enrichment tables, and transformation configuration.search: search, PromQL, trace-query, and log-pattern extraction APIs.
The domain crates do not depend on one another. Shared HTTP concerns belong in common; shared
business logic belongs in openobserve-core or another non-API service crate. The http crate is
the composition root.