Commit Graph

963 Commits

Author SHA1 Message Date
houseme c8ab89292e feat: improve webhook server and run script integration
- Enhance webhook example with proper shutdown handling using tokio::select!
- Update run.sh to automatically start webhook server alongside main service
- Add event notification configuration to run.sh using environment variables
- Set proper port bindings to ensure webhook server starts on port 3000
- Improve console output for better debugging experience
- Fix race condition during service startup and shutdown

This change ensures proper integration between the webhook server and
the main rustfs service, providing a seamless development experience
with automatic service discovery and clean termination.
2025-04-22 21:40:20 +08:00
houseme 4f347a92c1 feat: integrate event-notifier system with rustfs
- Rename package from rustfs-event-notifier to event-notifier for consistency
- Add shutdown hooks for event notification system in main process
- Handle graceful termination of notification services on server shutdown
- Implement initialization and configuration loading for event notification
- Fix environment variable configuration to properly parse adapter arrays
- Update example code to demonstrate proper configuration usage

This change ensures proper integration between rustfs and the event
notification system, with clean startup and shutdown sequences to prevent
resource leaks during application lifecycle.
2025-04-22 20:49:39 +08:00
houseme e4453adf82 feat(event-notifier): improve environment variable handling
- Fix deserialization error when parsing config from environment variables
- Add proper array format support for adapters configuration
- Update environment variable examples with correct format
- Improve documentation for configuration loading
- Implement helper functions for environment variable validation

This change fixes the "invalid type: map, expected a sequence" error
by ensuring proper formatting of array-type fields in environment variables.
2025-04-22 20:31:38 +08:00
houseme 15b6a426fb Merge branch 'main' of github.com:rustfs/s3-rustfs into feature/bucket-event-notification
# Conflicts:
#	Cargo.toml
2025-04-22 09:16:48 +08:00
houseme 0ed92b3b6f improve code 2025-04-22 09:14:09 +08:00
weisd 18b50c1752 otel debug filter tower 2025-04-22 09:07:43 +08:00
weisd 59c008b0ee fix pool select idx 2025-04-22 09:07:43 +08:00
DamonXue 27400394e4 Merge pull request #345 from rustfs/dev_objectEncrypt_v1
feat: update launch configuration and clean unuseful docker-compose config
2025-04-21 22:08:02 +08:00
DamonXue 536b2e2ed9 feat: update launch configuration and docker-compose for enhanced observability and logging 2025-04-21 22:05:31 +08:00
houseme 6c70c03985 improve code for global 2025-04-21 21:39:57 +08:00
houseme 5af648230a improve code 2025-04-21 19:01:31 +08:00
houseme 770f28d205 improve Cargo toml 2025-04-21 15:27:58 +08:00
junxiang Mu 177dec627c move protobuf generate into bin crate
Signed-off-by: junxiang Mu <1948535941@qq.com>
2025-04-21 13:28:32 +08:00
junxiang Mu 70e94fd018 fix sql
Signed-off-by: junxiang Mu <1948535941@qq.com>
2025-04-21 13:28:32 +08:00
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
guojidan ad4dec1aa2 Merge pull request #343 from rustfs/improve-proto
move protobuf generate into bin crate
2025-04-21 11:11:35 +08:00
junxiang Mu 29fbfc3d6e move protobuf generate into bin crate
Signed-off-by: junxiang Mu <1948535941@qq.com>
2025-04-21 03:09:54 +00:00
guojidan cbb41c8fa3 Merge pull request #342 from rustfs/fix-sql
fix sql
2025-04-21 09:47:02 +08:00
junxiang Mu b1d8e60802 fix sql
Signed-off-by: junxiang Mu <1948535941@qq.com>
2025-04-21 01:43:13 +00: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
weisd 8ea6f7e627 fix scstore::new bugs, stop ns_lock 2025-04-19 01:52:27 +08:00
weisd cf70e12e14 add tracing 2025-04-18 16:21:14 +08:00
weisd 9dfb8f8dcf Merge branch 'main' into dada/decom 2025-04-18 16:02:05 +08:00
weisd f624ec5ba6 feat:decom,rebalance 2025-04-18 16:00:21 +08:00
houseme 779a2d0a1a fix console http server 2025-04-16 17:01:25 +08:00
Nugine 800ced24b7 build(deps): upgrade s3s
resolves: #322
2025-04-16 15:16:19 +08:00
loverustfs bbd2bc2dde Merge pull request #330 from rustfs/nugine/performance/jemalloc
feat(rustfs/main): use jemalloc
2025-04-16 14:16:34 +08:00
Nugine 69598b48e3 feat(rustfs/main): use jemalloc 2025-04-16 11:59:08 +08:00
houseme fffa1ec671 Feature/status Support IPV4 and IPV6 dual stack and 308 Permanent Redirect (#329)
* test 308 Permanent Redirect

* improve code and Support IPV4 and IPV6 dual stack

* remove code
2025-04-15 23:29:12 +08:00
loverustfs 7fc280c22b Merge pull request #328 from rustfs/nugine/performance/tcp_nodelay
feat(rustfs/main): set TCP_NODELAY
2025-04-15 20:47:06 +08:00
loverustfs f1d84c7abe Merge pull request #326 from rustfs/nugine/performance/v4
feat(ecstore/erasure): optimize `encode_data`
2025-04-15 20:46:51 +08:00
Nugine 04874f5986 feat(rustfs/main): set TCP_NODELAY 2025-04-15 19:36:34 +08:00
Nugine e5b8abcfcd feat(ecstore/erasure): optimize encode_data 2025-04-15 18:07:51 +08:00
Nugine 85c8ea5ba6 build(deps): upgrade s3s 2025-04-15 17:37:08 +08:00
weisd 38b7bbbc49 merge main 2025-04-14 22:38:58 +08:00
weisd b9fb5e7e84 todo 2025-04-14 17:32:49 +08:00
junxiangMu 08fe5192fb Merge pull request #323 from rustfs/fix-data-scan
fix datascanner
2025-04-14 10:19:06 +08:00
junxiang Mu cefdf4d6f9 fix datascanner
Signed-off-by: junxiang Mu <1948535941@qq.com>
2025-04-14 02:18:40 +00:00
weisd c40099a636 fix config_handler 2025-04-13 23:52:52 +08:00
loverustfs 3940ae2d69 fix tls configs error 2025-04-13 19:53:29 +08:00
houseme c651bea903 Fix/fix domain server (#319)
* fix: server_domain and improve code for tls

* add log

* add tracing

* test

* improve config and tls

* Update rustfs/src/console.rs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-04-13 12:55:56 +08:00
houseme d76d60a295 Merge pull request #314 from rustfs/feature/upgrade-version
Feature/upgrade version and readme.md
2025-04-11 22:44:52 +08:00
houseme eb58ca0d8d fix typo 2025-04-11 22:37:52 +08:00
houseme 26f128df02 Revert "improve README.md"
This reverts commit b3ee5c8d4f.
2025-04-11 22:32:06 +08:00
houseme b3ee5c8d4f improve README.md 2025-04-11 21:48:44 +08:00
houseme e90bae35b9 upgrade protobuf download link and improve code for readme.md 2025-04-11 21:44:23 +08:00
houseme 37109fc618 upgrade crate version 2025-04-11 20:53:51 +08:00
houseme 33a0b9669c fix systemd notice 2025-04-11 20:02:51 +08:00
houseme 445e7df835 Merge pull request #313 from rustfs/feature/Systemd.service
feat: improve systemd integration and logging
2025-04-11 18:40:23 +08:00