508 Commits

Author SHA1 Message Date
houseme
3b6397012b feat(event-notifier): improve notification system initialization safety
- Add READY atomic flag to track full initialization status
- Implement initialize_safe and start_safe methods with mutex protection
- Add wait_until_ready function with configurable timeout
- Create initialize_and_start_with_ready_check helper method
- Replace sleep-based waiting with proper readiness checks
- Add safety checks before sending events
- Replace chrono with std::time for time handling
- Update error handling to provide clear initialization status

This change reduces race conditions in multi-threaded environments
and ensures events are only processed when the system is fully ready.
2025-04-21 13:28:01 +08:00
houseme
bfc165abe0 feat: implement event notification system
- 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.
2025-04-21 00:17:27 +08:00
houseme
21a829e7cf init event notifer 2025-04-19 02:20:50 +08:00
houseme
c3a17caa80 Update crates/obs/src/sink.rs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-04-11 17:45:59 +08:00
houseme
24d6c555f7 Remove unused crate 2025-04-11 17:38:44 +08:00
houseme
ab8b19eb5d improve signal watch 2025-04-11 16:48:07 +08:00
houseme
fdd7b14825 create get default log path func 2025-04-09 21:52:30 +08:00
houseme
a07ca8ae81 improve code for obs 2025-04-09 15:12:31 +08:00