feat(logging): add Kafka and Webhook audit targets

- Implemented `KafkaAuditTarget` to send audit entries to a Kafka topic.
- Implemented `WebhookAuditTarget` to send audit entries to a specified webhook URL.
- Updated `AuditLogger` to support multiple audit targets including Kafka and Webhook.
- Added examples and documentation for the new audit targets.
This commit is contained in:
houseme
2025-02-21 18:49:25 +08:00
parent 03589201fb
commit c04536b132
5 changed files with 137 additions and 1 deletions
Generated
+33
View File
@@ -5192,6 +5192,36 @@ version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539"
[[package]]
name = "rdkafka"
version = "0.37.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "14b52c81ac3cac39c9639b95c20452076e74b8d9a71bc6fc4d83407af2ea6fff"
dependencies = [
"futures-channel",
"futures-util",
"libc",
"log",
"rdkafka-sys",
"serde",
"serde_derive",
"serde_json",
"slab",
"tokio",
]
[[package]]
name = "rdkafka-sys"
version = "4.8.0+2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ced38182dc436b3d9df0c77976f37a67134df26b050df1f0006688e46fc4c8be"
dependencies = [
"libc",
"libz-sys",
"num_enum",
"pkg-config",
]
[[package]]
name = "reader"
version = "0.0.1"
@@ -5557,7 +5587,10 @@ dependencies = [
"opentelemetry-semantic-conventions",
"opentelemetry-stdout",
"opentelemetry_sdk",
"rdkafka",
"reqwest",
"serde",
"serde_json",
"tokio",
"tracing",
"tracing-opentelemetry",