Files
openobserve/Cargo.toml
T

439 lines
11 KiB
TOML

[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.60.0"
publish = false
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[features]
default = []
enterprise = []
vectorscan = []
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
split-debuginfo = "packed"
[dependencies]
axum.workspace = true
axum-extra.workspace = true
axum-server.workspace = true
tower.workspace = true
tower-http.workspace = true
http.workspace = true
http-body.workspace = true
http-body-util.workspace = true
hyper.workspace = true
hyper-util.workspace = true
mime_guess = "2.0"
ahash.workspace = true
anyhow.workspace = true
argon2.workspace = true
async-trait.workspace = true
async-recursion.workspace = true
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 = ["axum"] }
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.27"
md5.workspace = true
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 = { version = "0.6", git = "https://github.com/openobserve/promql-parser", branch = "openobserve" }
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
rquickjs.workspace = true
rust-embed-for-web = "11.2.1"
rustls.workspace = true
rustls-pemfile.workspace = true
rustls-native-certs.workspace = true
webpki-roots.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
sqlx.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
tonic-prost.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-axum.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.workspace = true
futures-core = "0.3.31"
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]
expect-test.workspace = true
base64 = "0.22"
float-cmp = "0.10"
multer = "3.1"
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"] }
axum = { version = "0.8", features = ["macros", "multipart", "tracing"] }
axum-extra = { version = "0.10", features = [
"typed-header",
"query",
"cookie",
] }
axum-server = { version = "0.7", features = ["tls-rustls"] }
async-fs = "2.2"
tower = { version = "0.5", features = ["full"] }
tower-http = { version = "0.6", features = [
"cors",
"compression-gzip",
"compression-br",
"compression-deflate",
"decompression-gzip",
"decompression-br",
"decompression-deflate",
"trace",
"timeout",
"request-id",
"util",
] }
http = "1.2"
http-body = "1.0"
http-body-util = "0.1"
hyper = { version = "1.6", features = ["full"] }
hyper-util = { version = "0.1", features = [
"tokio",
"server",
"http1",
"http2",
] }
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"
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"] }
chrono-tz = "0.10"
cityhasher = { version = "0.1", default-features = false }
collapse = "0.1.2"
cron = "0.15"
dashmap = { version = "6.1", features = ["serde"] }
datafusion = "52.0.0"
datafusion-proto = "52.0.0"
datafusion-functions-aggregate-common = "52.0.0"
datafusion-functions-json = "0.52.0"
expect-test = "1.4"
arrow = { version = "57.1.0", features = ["ipc_compression", "prettyprint"] }
arrow-flight = "57.1.0"
arrow-json = "57.1.0"
arrow-schema = { version = "57.1.0", features = ["serde"] }
parquet = { version = "57.1.0", features = ["arrow", "async", "object_store"] }
object_store = { version = "0.12.4", features = ["aws", "azure", "gcp"] }
sqlparser = { version = "0.59.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"
local-ip-address = "0.6"
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.31"
opentelemetry_sdk = { version = "0.31", features = [
"experimental_trace_batch_span_processor_with_async_runtime",
"rt-tokio",
"trace",
"metrics",
"spec_unstable_metrics_views",
] }
opentelemetry-otlp = { version = "0.31", features = [
"http-proto",
"serialize",
"serde",
"trace",
"reqwest-client",
"grpc-tonic",
] }
opentelemetry-proto = { version = "0.31", features = [
"gen-tonic",
"with-serde",
"logs",
"metrics",
"trace",
] }
parking_lot = "0.12"
pin-project-lite = "0.2.16"
prometheus = { version = "0.14", features = ["process"] }
prost = "0.14.1"
prost-wkt-types = "0.7"
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",
"gzip",
"brotli",
"deflate",
] }
roaring = "0.11.2"
rquickjs = { version = "0.11.0", features = ["array-buffer", "classes"] }
rustls-pemfile = "2"
rustls = { version = "0.23.20", default-features = false, features = [
"std",
"tls12",
] }
rustls-native-certs = "0.8"
webpki-roots = "0.26"
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", features = ["compat"] }
tokio-stream = "0.1"
tonic = { version = "0.14", features = ["gzip", "tls-webpki-roots"] }
tonic-prost = "0.14"
tracing = "0.1.40"
tracing-appender = "0.2.3"
tracing-log = "0.2"
tracing-opentelemetry = "0.32"
tracing-subscriber = { version = "0.3.20", features = [
"env-filter",
"json",
"registry",
] }
url = "2.5"
urlencoding = "2.1"
utoipa = { version = "5", features = ["axum_extras", "openapi_extensions"] }
utoipa-axum = "0.2"
utoipa-swagger-ui = { version = "9", features = ["axum"] }
uuid = { version = "1.18.1", features = ["v7"] }
vector-enrichment = { version = "0.1.0", package = "enrichment", git = "https://github.com/openobserve/vector", branch = "v0.51" }
vrl = { version = "0.28.1", features = [
"arbitrary",
"value",
"compiler",
"test",
] }
zip = "6.0.0"
zstd = "0.13"