[dependencies.anyhow]
version = "1.0"
[dependencies.colored]
optional = true
version = "3.0"
[dependencies.crossbeam-channel]
optional = true
version = "0.5"
[dependencies.env_filter]
version = "0.1.1"
[dependencies.fastrace]
optional = true
version = "0.7"
[dependencies.fasyslog]
optional = true
version = "1.0.0"
[dependencies.jiff]
version = "0.2"
[dependencies.libc]
optional = true
version = "0.2.162"
[dependencies.log]
features = ["std", "kv"]
version = "0.4"
[dependencies.native-tls]
optional = true
version = "0.2"
[dependencies.opentelemetry]
features = ["logs"]
optional = true
version = "0.29.0"
[dependencies.opentelemetry-otlp]
features = ["logs", "grpc-tonic", "http-json", "http-proto"]
optional = true
version = "0.29.0"
[dependencies.opentelemetry_sdk]
features = ["logs", "rt-tokio"]
optional = true
version = "0.29.0"
[dependencies.serde]
features = ["derive"]
optional = true
version = "1.0"
[dependencies.serde_json]
optional = true
version = "1.0"
[dev-dependencies.rand]
version = "0.9"
[dev-dependencies.tempfile]
version = "3.16"
[dev-dependencies.tokio]
features = ["rt-multi-thread"]
version = "1"
[[example]]
doc-scrape-examples = true
name = "custom_layout_filter"
path = "examples/custom_layout_filter.rs"
[[example]]
doc-scrape-examples = true
name = "fastrace"
path = "examples/fastrace.rs"
required-features = ["fastrace", "fastrace/enable"]
[[example]]
doc-scrape-examples = true
name = "journald"
path = "examples/journald.rs"
required-features = ["journald"]
[[example]]
doc-scrape-examples = true
name = "json_stdout"
path = "examples/json_stdout.rs"
required-features = ["json"]
[[example]]
doc-scrape-examples = true
name = "multiple_dispatches"
path = "examples/multiple_dispatches.rs"
[[example]]
doc-scrape-examples = true
name = "rolling_file"
path = "examples/rolling_file.rs"
required-features = ["rolling-file", "json"]
[[example]]
doc-scrape-examples = true
name = "simple_stdout"
path = "examples/simple_stdout.rs"
[[example]]
doc-scrape-examples = true
name = "syslog"
path = "examples/syslog.rs"
required-features = ["syslog"]
[features]
colored = ["dep:colored"]
default = []
fastrace = ["dep:fastrace"]
journald = ["dep:libc"]
json = ["dep:serde_json", "dep:serde", "jiff/serde"]
native-tls = ["dep:native-tls", "fasyslog?/native-tls"]
non-blocking = ["dep:crossbeam-channel"]
opentelemetry = ["dep:opentelemetry", "dep:opentelemetry-otlp", "dep:opentelemetry_sdk"]
rolling-file = ["non-blocking"]
syslog = ["non-blocking", "dep:fasyslog"]
[lib]
name = "logforth"
path = "src/lib.rs"
[package]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["development-tools::debugging"]
description = "A versatile and extensible logging implementation."
edition = "2021"
homepage = "https://github.com/fast/logforth"
keywords = ["logging", "log", "opentelemetry", "fastrace"]
license = "Apache-2.0"
name = "logforth"
readme = "README.md"
repository = "https://github.com/fast/logforth"
rust-version = "1.80.0"
version = "0.23.1"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[[test]]
name = "recursive_logging"
path = "tests/recursive_logging.rs"