Commit Graph

34 Commits

Author SHA1 Message Date
houseme b4c316c662 fix logger format (#134)
* fix logger format

* fmt
2025-07-09 16:05:22 +08:00
houseme 2e14b32ccd chore: Add copyright and license headers (#23)
* chore: Add copyright and license headers

This commit adds the Apache 2.0 license and a copyright notice to the header of all source files. This ensures that the licensing and copyright information is clearly stated within the codebase.

* cargo fmt

* fix

* fmt

* fix clippy
2025-07-02 15:07:47 +08:00
houseme 7bd8431006 cargo fmt 2025-06-27 18:53:51 +08:00
houseme 749537664f fix:Apply suggestions from clippy 1.88 2025-06-27 18:16:29 +08:00
weisd 7e17d7d729 refactor: improve object listing and version handling
- Refactor find_version_index to accept Uuid directly instead of string
- Split from_meta_cache_entries_sorted into separate methods for versions and infos
- Add support for after_version_id filtering in version listing
- Fix S3 error code for replication configuration not found
- Improve error handling and logging levels
- Clean up import statements and remove debug code
2025-06-24 11:10:23 +08:00
houseme e8a5b5d12c improve flexi_logger relation 2025-06-24 09:19:26 +08:00
weisd 4559baaeeb feat: migrate to reed-solomon-simd only implementation
- Remove reed-solomon-erasure dependency and all related code
- Simplify ReedSolomonEncoder from enum to struct with SIMD-only implementation
- Eliminate all conditional compilation (#[cfg(feature = ...)])
- Add instance caching with RwLock-based encoder/decoder reuse
- Implement reset mechanism to avoid unnecessary allocations
- Ensure thread safety with proper cache management
- Update documentation and benchmark scripts for SIMD-only approach
- Apply code formatting across all files

Breaking Changes:
- Removes support for reed-solomon-erasure feature flag
- API remains compatible but implementation is now SIMD-only

Performance Impact:
- Improved encoding/decoding performance through SIMD optimization
- Reduced memory allocations via instance caching
- Enhanced thread safety and concurrency support
2025-06-23 10:00:17 +08:00
houseme c7af6587f5 trace log use local time and get custom user agent 2025-06-22 10:31:32 +08:00
weisd f85ef06783 merge main 2025-06-09 15:31:11 +08:00
houseme d66525a22f refactor(deps): centralize crate versions in root Cargo.toml (#448)
* chore(ci): upgrade protoc from 30.2 to 31.1

- Update protoc version in GitHub Actions setup workflow
- Use arduino/setup-protoc@v3 to install the latest protoc version
- Ensure compatibility with current project requirements
- Improve proto file compilation performance and stability

This upgrade aligns our development environment with the latest protobuf standards.

* modify package version

* refactor(deps): centralize crate versions in root Cargo.toml

- Move all dependency versions to workspace.dependencies section
- Standardize AWS SDK and related crates versions
- Update tokio, bytes, and futures crates to latest stable versions
- Ensure consistent version use across all workspace members
- Implement workspace inheritance for common dependencies

This change simplifies dependency management and ensures version consistency across the project.

* fix

* modify
2025-06-07 21:52:59 +08:00
weisd 62a7824d0d fix clippy 2025-06-07 15:39:06 +08:00
weisd 7032318858 update obs 2025-06-06 16:46:12 +08:00
houseme b003d08d55 set logger level from RUST_LOG 2025-06-06 16:19:17 +08:00
houseme 541b812bb4 improve code for obs crate 2025-05-30 13:04:24 +08:00
houseme 7cff7f0bd1 fix(obs): align stdout log level with configured logger_level
- Replace fixed `flexi_logger::Duplicate::Info` with dynamic level from config
- Convert logger_level string to corresponding LevelFilter enum
- Ensure terminal output respects the same log level as file logs
- Fix documentation to reflect the dynamic level behavior
2025-05-30 00:22:21 +08:00
houseme 4a9b842aa3 fix 2025-05-29 22:30:33 +08:00
houseme 545e5b2efb fix 2025-05-29 21:15:45 +08:00
houseme 3ceec7b5f2 improve code for obs 2025-05-29 21:10:04 +08:00
houseme 7abcfe31e8 improve code for otel (#418) 2025-05-26 12:05:57 +08:00
houseme 571cedf4ce feat(obs): implement global OpenTelemetry guard management 2025-05-12 13:32:18 +08:00
houseme 01d5383ce3 Feature/bucket event notification (#365)
* add tracing instrument

* fix rebalance/decom

* modify Telemetry filter order

* feat: improve address binding and port handling mechanism (#366)

* feat: improve address binding and port handling mechanism

1. Add support for ":port" format to enable dual-stack binding (IPv4/IPv6)
2. Implement automatic port allocation when port 0 is specified
3. Optimize server startup process with unified address resolution
4. Enhance error handling and logging for address resolution
5. Improve graceful shutdown with signal listening
6. Clean up commented code in console.rs

Files:
- ecstore/src/utils/net.rs
- rustfs/src/console.rs
- rustfs/src/main.rs

Branch: feature/server-and-console-port

* improve code for console

* improve code

* improve code for console and net.rs

* Update rustfs/src/main.rs

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

* Update rustfs/src/utils/mod.rs

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

---------

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

* upgrade config file

* modify

* fix readme

Signed-off-by: junxiang Mu <1948535941@qq.com>

* improve readme.md

* improve code for readme.md
add chinese readme.md

* Implement Storage Service Event Notification System

Added event notification capability to the storage module, enabling the storage service to publish object operation events. Key changes include:

1. Created `event_notifier` module providing core functionality:
   - `create_metadata()` - Creates event metadata objects with default configuration ID
   - `send_event()` - Asynchronously sends event notifications with error handling

2. Integrated the `rustfs_event_notifier` library:
   - Supports object creation, deletion, and access events
   - Provides event metadata building and management
   - Includes proper error propagation

These changes enable the system to trigger notifications when storage operations occur, facilitating auditing, monitoring, and integration with other systems.

* fix

---------

Signed-off-by: junxiang Mu <1948535941@qq.com>
Co-authored-by: weisd <im@weisd.in>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: junxiang Mu <1948535941@qq.com>
2025-04-30 00:31:55 +08:00
houseme e5cd061e18 improve code for request and telemetry 2025-04-29 11:55:59 +08:00
junxiang Mu e346d20228 tmp1
Signed-off-by: junxiang Mu <1948535941@qq.com>
2025-04-29 02:53:42 +00:00
houseme 68a89d59e5 modify 2025-04-28 12:50:56 +08:00
houseme e8f8a0872d modify Telemetry filter order 2025-04-27 09:50:32 +08:00
houseme 05f1412323 improve code for opentelemetry 2025-04-26 17:26:54 +08:00
houseme 7dae5f8ab7 improve code 2025-04-25 13:35:03 +08:00
houseme 86353d98d5 feat: add TraceLayer for HTTP service and improve metrics (#361)
* improve code for opentelemetry and add system metrics

* feat: add TraceLayer for HTTP service and improve metrics

- Add TraceLayer to HTTP server for request tracing
- Implement system metrics for process monitoring
- Optimize init_telemetry method for better resource management
- Add graceful shutdown handling for telemetry components
- Fix GracefulShutdown ownership issues with Arc wrapper

* improve code for init_process_observer

* remove tomlfmt.toml

* Translation comment

* improve code for console CompressionLayer params
2025-04-24 19:04:57 +08:00
weisd cffd4fc28d merge fix/pools 2025-04-23 16:48:57 +08:00
weisd fff7e5f827 pool select idx
fixs:#346, #339, #338, #337, #336, #334

test healbucket

test get_available_pool_idx

fix
2025-04-23 15:11:43 +08:00
houseme 6d1a4ab824 improve for logger 2025-04-22 22:41:45 +08:00
weisd 18b50c1752 otel debug filter tower 2025-04-22 09:07:43 +08:00
houseme ab8b19eb5d improve signal watch 2025-04-11 16:48:07 +08:00
houseme a07ca8ae81 improve code for obs 2025-04-09 15:12:31 +08:00