content: [package]
  description = "OpenObserve is an observability platform that allows you to capture, search, and analyze your logs, metrics, and traces."
  edition = "2024"
  homepage = "https://openobserve.ai/"
  keywords = [
      "search",
      "log",
      "metrics",
      "traces",
      "analytics",
      "openobserve",
      "observability",
      "open source",
      "open-source",
      "opensource",
  ]
  license = "AGPL-3.0"
  name = "openobserve"
  repository = "https://github.com/openobserve/openobserve/"
  version = "0.16.0"
  publish = false
  # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
  
  [features]
  default = []
  enterprise = []
  cloud = []
  mimalloc = ["dep:mimalloc"]
  jemalloc = ["dep:tikv-jemallocator"]
  profiling = ["dep:pprof"]
  pyroscope = ["dep:pyroscope", "dep:pyroscope_pprofrs"]
  tokio-console = ["dep:console-subscriber"]
  
  [profile.release]
  debug = false
  strip = true
  
  [profile.release-prod]
  inherits = "release"
  codegen-units = 1
  lto = "thin"
  
  [profile.release-profiling]
  inherits = "release"
  debug = true
  strip = false
  codegen-units = 4
  
  [dependencies]
  actix-cors = "0.7"
  actix-http = "3.9"
  actix-multipart = { version = "0.7", features = ["derive"] }
  actix-web.workspace = true
  actix-web-httpauth = "0.8"
  actix-web-opentelemetry = { version = "0.22", features = ["metrics"] }
  actix-web-rust-embed-responder = { version = "2.2", default-features = false, features = [
      "support-rust-embed-for-web",
      "base64",
  ] }
  actix-tls.workspace = true
  ahash.workspace = true
  anyhow.workspace = true
  argon2.workspace = true
  async-trait.workspace = true
  async-recursion.workspace = true
  async-walkdir.workspace = true
  awc = { version = "3.5", features = ["rustls-0_23"] }
  aws-sdk-sns.workspace = true
  base64.workspace = true
  bitflags = "2.9"
  bitvec.workspace = true
  blake3 = { version = "1.6", features = ["rayon"] }
  bytes.workspace = true
  byteorder.workspace = true
  chrono.workspace = true
  clap = { version = "4.1", default-features = false, features = [
      "std",
      "help",
      "usage",
      "suggestions",
      "cargo",
  ] }
  cloudevents-sdk = { version = "0.8.0", features = ["actix"] }
  cron.workspace = true
  csv = "1.3"
  dashmap.workspace = true
  datafusion.workspace = true
  datafusion-proto.workspace = true
  datafusion-functions-aggregate-common.workspace = true
  datafusion-functions-json.workspace = true
  arrow.workspace = true
  arrow-flight.workspace = true
  arrow-json.workspace = true
  arrow-schema.workspace = true
  parquet.workspace = true
  object_store.workspace = true
  env_logger.workspace = true
  faststr.workspace = true
  flate2.workspace = true
  futures.workspace = true
  hashlink.workspace = true
  hashbrown.workspace = true
  hex.workspace = true
  http-auth-basic = "0.3"
  itertools.workspace = true
  jsonwebtoken = "9.3"
  log.workspace = true
  maxminddb = "0.26"
  memchr.workspace = true
  mimalloc = { version = "0.1.43", default-features = false, optional = true }
  once_cell.workspace = true
  opentelemetry.workspace = true
  opentelemetry_sdk.workspace = true
  opentelemetry-otlp.workspace = true
  opentelemetry-proto.workspace = true
  parking_lot.workspace = true
  prometheus.workspace = true
  promql-parser = "0.6"
  prost.workspace = true
  prost-wkt-types.workspace = true
  proto.workspace = true
  prettytable-rs = "0.10.0"
  pyroscope = { version = "0.5.8", optional = true }
  pyroscope_pprofrs = { version = "0.2.8", optional = true }
  rand.workspace = true
  rayon.workspace = true
  regex.workspace = true
  regex-syntax.workspace = true
  reqwest.workspace = true
  rust-embed-for-web = "11.2.1"
  rustls.workspace = true
  rustls-pemfile.workspace = true
  sea-orm.workspace = true
  segment.workspace = true
  serde.workspace = true
  serde_json.workspace = true
  sha256.workspace = true
  snafu.workspace = true
  snap.workspace = true
  sqlparser.workspace = true
  strum.workspace = true
  svix-ksuid.workspace = true
  thiserror.workspace = true
  time.workspace = true
  tikv-jemallocator = { version = "0.6", optional = true }
  tokio.workspace = true
  console-subscriber = { version = "0.4", optional = true }
  tonic.workspace = true
  tracing.workspace = true
  tracing-appender.workspace = true
  tracing-opentelemetry.workspace = true
  tracing-subscriber.workspace = true
  tempfile.workspace = true
  uaparser = "0.6.4"
  url.workspace = true
  utoipa.workspace = true
  utoipa-swagger-ui.workspace = true
  version-compare = "0.2.0"
  vector-enrichment.workspace = true
  x509-parser = "0.18.0"
  vrl.workspace = true
  zstd.workspace = true
  config.workspace = true
  infra.workspace = true
  ingester.workspace = true
  wal.workspace = true
  report_server.workspace = true
  chromiumoxide.workspace = true
  lettre.workspace = true
  tantivy.workspace = true
  tantivy-fst.workspace = true
  zip.workspace = true
  futures-util = "0.3.31"
  tokio-util = "0.7.13"
  pprof = { version = "0.15.0", features = [
      "flamegraph",
      "prost-codec",
  ], optional = true }
  tokio-stream.workspace = true
  mime = "0.3.17"
  pin-project-lite = "0.2.16"
  futures-core = "0.3.31"
  actix-service = "2.0.3"
  actix-utils = "3.0.1"
  derive_more = { version = "2.0.1", features = ["full"] }
  brotli = "8.0.1"
  tokio-rustls.workspace = true
  roaring.workspace = true
  flight.workspace = true
  async-stream.workspace = true
  
  [dev-dependencies]
  async-walkdir.workspace = true
  expect-test.workspace = true
  base64 = "0.22"
  float-cmp = "0.10"
  rcgen = "0.14.4"
  
  [workspace]
  members = [
      "src/config",
      "src/infra",
      "src/ingester",
      "src/wal",
      "src/proto",
      "src/report_server",
      "src/flight",
  ]
  resolver = "2"
  
  [workspace.package]
  version = "0.1.0"
  edition = "2024"
  license = "AGPL-3.0"
  
  [workspace.dependencies]
  config = { path = "src/config" }
  infra = { path = "src/infra" }
  ingester = { path = "src/ingester" }
  wal = { path = "src/wal" }
  proto = { path = "src/proto" }
  report_server = { path = "src/report_server" }
  flight = { path = "src/flight" }
  aes-siv = "0.7.0"
  ahash = { version = "0.8", features = ["serde"] }
  actix-web = { version = "4.11", features = ["rustls-0_23"] }
  actix-tls = { version = "3.4", features = [
      "connect",
      "uri",
      "rustls-0_23-native-roots",
      "rustls-0_23-webpki-roots",
  ] }
  anyhow = "1.0"
  arc-swap = "1.7.1"
  argon2 = { version = "0.5", features = ["alloc", "password-hash"] }
  async-nats = "0.42"
  async-stream = "0.3.6"
  async-trait = "0.1"
  async-recursion = "1.0"
  async-walkdir = "2.1.0"
  aws-config = "1.5.17"
  aws-sdk-sns = "1.61.0"
  base64 = "0.22"
  bitvec = "1.0"
  bytes = "1.10"
  byteorder = "1.5"
  chromiumoxide = { git = "https://github.com/mattsse/chromiumoxide", features = [
      "tokio-runtime",
      "_fetcher-rusttls-tokio",
  ], default-features = false, rev = "6f2392f78ae851e2acf33df8e9764cc299d837db" }
  chrono = { version = "0.4", default-features = false, features = ["clock"] }
  cityhasher = { version = "0.1", default-features = false }
  collapse = "0.1.2"
  cron = "0.15"
  dashmap = { version = "6.1", features = ["serde"] }
  datafusion = "50.1.0"
  datafusion-proto = "50.1.0"
  datafusion-functions-aggregate-common = "50.1.0"
  datafusion-functions-json = "0.50.0"
  expect-test = "1.4"
  arrow = { version = "56.0.0", features = ["ipc_compression", "prettyprint"] }
  arrow-flight = "56.0.0"
  arrow-json = "56.0.0"
  arrow-schema = { version = "56.0.0", features = ["serde"] }
  parquet = { version = "56.0.0", features = ["arrow", "async", "object_store"] }
  object_store = { version = "0.12.3", features = ["aws", "azure", "gcp"] }
  sqlparser = { version = "0.58.0", features = ["serde", "visitor"] }
  dotenv_config = "0.2.2"
  dotenvy = "0.15.7"
  env_logger = "0.11.8"
  faststr = { version = "0.2", features = ["serde"] }
  flate2 = { version = "1.0", features = ["zlib"] }
  futures = "0.3"
  get_if_addrs = "0.5"
  hashlink = "0.10"
  hashbrown = { version = "0.16.0", features = ["serde"] }
  hex = "0.4"
  indexmap = { version = "2.7", features = ["serde"] }
  itertools = "0.14"
  lettre = { version = "0.11", default-features = false, features = [
      "builder",
      "hostname",
      "smtp-transport",
      "pool",
      "tokio1",
      "tokio1-rustls-tls",
      "aws-lc-rs"
  ] }
  log = "0.4"
  md5 = "0.8.0"
  memchr = "2.7"
  murmur3 = "0.5"
  once_cell = "1.20"
  ordered-float = { version = "5.0.0", features = ["serde"] }
  opentelemetry = "0.30"
  opentelemetry_sdk = { version = "0.30", features = [
      "experimental_trace_batch_span_processor_with_async_runtime",
      "rt-tokio",
      "trace",
      "metrics",
      "spec_unstable_metrics_views",
  ] }
  opentelemetry-otlp = { version = "0.30", features = [
      "http-proto",
      "serialize",
      "serde",
      "trace",
      "reqwest-client",
      "grpc-tonic"
  ] }
  opentelemetry-proto = { version = "0.30", features = [
      "gen-tonic",
      "with-serde",
      "logs",
      "metrics",
      "trace",
  ] }
  parking_lot = "0.12"
  prometheus = { version = "0.14", features = ["process"] }
  prost = "0.13.1"
  prost-wkt-types = "0.6"
  rand = "0.9.2"
  rayon = "1.10"
  regex = "1.11"
  regex-syntax = "0.8"
  reqwest = { version = "0.12", default-features = false, features = [
      "rustls-tls-native-roots",
      "stream",
  ] }
  roaring = "0.11.2"
  rustls-pemfile = "2"
  rustls = { version = "0.23.20", default-features = false, features = [
      "std",
      "tls12",
  ] }
  sea-orm = { version = "1.1.8", features = [
      "sqlx-all",
      "runtime-tokio-rustls",
      "macros",
  ] }
  sea-orm-migration = { version = "1.1.8", features = [
      "sqlx-mysql",
      "sqlx-postgres",
      "sqlx-sqlite",
      "runtime-tokio-rustls",
  ] }
  segment = "~0.2.4"
  serde = { version = "1", features = ["derive"] }
  serde_json = { version = "1", features = ["arbitrary_precision"] }
  sha1 = "0.10.6"
  sha256 = "1.4.0"
  snafu = "0.8.9"
  snap = "1"
  sqlx = { version = "0.8.3", features = [
      "runtime-tokio-rustls",
      "postgres",
      "mysql",
      "sqlite",
      "chrono",
  ] }
  strum = { version = "0.27", features = ["derive"] }
  svix-ksuid = { version = "0.8", features = ["serde"] }
  sysinfo = "0.37"
  tantivy = { version = "0.25", features = ["quickwit"] }
  tantivy-fst = "0.5"
  tempfile = "3"
  thiserror = "2.0.17"
  time = "0.3"
  tokio = { version = "1", features = ["full"] }
  tokio-rustls = { version = "0.26", default-features = false, features = [
      "logging",
      "tls12",
  ] }
  tokio-util = { version = "0.7.12", features = ["compat"] }
  tokio-stream = "0.1"
  tonic = { version = "0.13", features = ["gzip", "prost", "tls-webpki-roots"] }
  tracing = "0.1.40"
  tracing-appender = "0.2.3"
  tracing-log = "0.2"
  tracing-opentelemetry = "0.31"
  tracing-subscriber = { version = "0.3.20", features = [
      "env-filter",
      "json",
      "registry",
  ] }
  url = "2.5"
  urlencoding = "2.1"
  utoipa = { version = "5", features = ["actix_extras", "openapi_extensions"] }
  utoipa-swagger-ui = { version = "9", features = ["actix-web"] }
  uuid = { version = "1.18.1", features = ["v7"] }
  vector-enrichment = { version = "0.1.0", package = "enrichment", git = "https://github.com/openobserve/vector", rev = "2003d617c7befdc7aa7f73a37263d272cd4a3718" }
  vrl = { version = "0.27.0", git = "https://github.com/vectordotdev/vrl.git", branch = "main", features = ["value", "compiler", "test"] }
  zip = "6.0.0"
  zstd = "0.13"
  