mirror of
https://github.com/rustfs/rustfs.git
synced 2026-08-09 14:49:25 +00:00
bfc165abe0
- Add core event notification interfaces - Support multiple notification backends: - Webhook (default) - Kafka - MQTT - HTTP Producer - Implement configurable event filtering - Add async event dispatching with backpressure handling - Provide serialization/deserialization for event payloads This module enables system events to be published to various endpoints with consistent delivery guarantees and failure handling.
42 lines
1.3 KiB
TOML
42 lines
1.3 KiB
TOML
[package]
|
|
name = "rustfs-event-notifier"
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
rust-version.workspace = true
|
|
version.workspace = true
|
|
|
|
[features]
|
|
default = ["webhook"]
|
|
webhook = ["dep:reqwest"]
|
|
kafka = ["rdkafka"]
|
|
mqtt = ["rumqttc"]
|
|
http-producer = ["dep:axum"]
|
|
|
|
[dependencies]
|
|
async-trait = { workspace = true }
|
|
axum = { workspace = true, optional = true }
|
|
chrono = { workspace = true, features = ["serde"] }
|
|
dotenv = { workspace = true }
|
|
figment = { workspace = true, features = ["toml", "yaml", "env"] }
|
|
rdkafka = { workspace = true, features = ["tokio"], optional = true }
|
|
reqwest = { workspace = true, optional = true }
|
|
rumqttc = { workspace = true, optional = true }
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
serde_with = { workspace = true }
|
|
smallvec = { workspace = true, features = ["serde"] }
|
|
strum = { workspace = true, features = ["derive"] }
|
|
tracing = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
tokio = { workspace = true, features = ["sync", "net", "macros", "signal", "rt-multi-thread"] }
|
|
tokio-util = { workspace = true }
|
|
uuid = { workspace = true, features = ["v4", "serde"] }
|
|
|
|
[dev-dependencies]
|
|
tokio = { workspace = true, features = ["test-util"] }
|
|
tracing-subscriber = { workspace = true }
|
|
|
|
[lints]
|
|
workspace = true
|