mirror of
https://github.com/rustfs/rustfs.git
synced 2026-08-28 07:57:01 +00:00
chore(deps): bump the dependencies group with 6 updates (#3151)
* chore(deps): bump the dependencies group with 6 updates Bumps the dependencies group with 6 updates: | Package | From | To | | --- | --- | --- | | [hyper](https://github.com/hyperium/hyper) | `1.10.0` | `1.10.1` | | [serial_test](https://github.com/palfrey/serial_test) | `3.4.0` | `3.5.0` | | [snafu](https://github.com/shepmaster/snafu) | `0.9.0` | `0.9.1` | | [uuid](https://github.com/uuid-rs/uuid) | `1.23.1` | `1.23.2` | | [dial9-tokio-telemetry](https://github.com/dial9-rs/dial9-tokio-telemetry) | `0.3.12` | `0.3.13` | | [pyroscope](https://github.com/grafana/pyroscope-rs) | `2.0.5` | `2.0.6` | Updates `hyper` from 1.10.0 to 1.10.1 - [Release notes](https://github.com/hyperium/hyper/releases) - [Changelog](https://github.com/hyperium/hyper/blob/master/CHANGELOG.md) - [Commits](https://github.com/hyperium/hyper/compare/v1.10.0...v1.10.1) Updates `serial_test` from 3.4.0 to 3.5.0 - [Release notes](https://github.com/palfrey/serial_test/releases) - [Commits](https://github.com/palfrey/serial_test/compare/v3.4.0...v3.5.0) Updates `snafu` from 0.9.0 to 0.9.1 - [Changelog](https://github.com/shepmaster/snafu/blob/main/CHANGELOG.md) - [Commits](https://github.com/shepmaster/snafu/compare/0.9.0...0.9.1) Updates `uuid` from 1.23.1 to 1.23.2 - [Release notes](https://github.com/uuid-rs/uuid/releases) - [Commits](https://github.com/uuid-rs/uuid/compare/v1.23.1...v1.23.2) Updates `dial9-tokio-telemetry` from 0.3.12 to 0.3.13 - [Release notes](https://github.com/dial9-rs/dial9-tokio-telemetry/releases) - [Changelog](https://github.com/dial9-rs/dial9/blob/main/CHANGELOG.md) - [Commits](https://github.com/dial9-rs/dial9-tokio-telemetry/compare/dial9-tokio-telemetry-v0.3.12...dial9-tokio-telemetry-v0.3.13) Updates `pyroscope` from 2.0.5 to 2.0.6 - [Release notes](https://github.com/grafana/pyroscope-rs/releases) - [Changelog](https://github.com/grafana/pyroscope-rs/blob/main/CHANGELOG.md) - [Commits](https://github.com/grafana/pyroscope-rs/compare/lib-2.0.5...lib-2.0.6) --- updated-dependencies: - dependency-name: hyper dependency-version: 1.10.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: serial_test dependency-version: 3.5.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: snafu dependency-version: 0.9.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: uuid dependency-version: 1.23.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: dial9-tokio-telemetry dependency-version: 0.3.13 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: pyroscope dependency-version: 2.0.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dependencies ... Signed-off-by: dependabot[bot] <support@github.com> * fix(profiling): pin pyroscope to 2.0.5, add jemalloc memory profiling, unify platform gates Pin pyroscope to =2.0.5 to avoid duplicate `perf_signal_handler` symbol caused by 2.0.6 vendoring pprof-rs internally. 2.0.5 depends on external pprof-pyroscope-fork (v0.1500.4), which Cargo unifies with the workspace's pprof-pyroscope-fork — a single symbol instance, no linker collision. Add jemalloc_backend for continuous memory profiling export to Pyroscope, alongside the existing pprof-based CPU profiling. Both CPU and memory profiling now work on linux and macos. Unify platform gates from `cfg(all(target_os = "linux", target_env = "gnu", target_arch = "x86_64"))` to `cfg(any(target_os = "linux", target_os = "macos"))`, switching macOS global allocator from mimalloc to jemalloc. * style: format cfg attributes in allocator_reclaim.rs * chore(deps): ignore pyroscope 2.x in dependabot, add profile_type tag Add pyroscope 2.x to dependabot ignore list to prevent auto-upgrade past 2.0.5 (>=2.0.6 vendors pprof-rs, causing duplicate symbol conflict). Add profile_type=cpu tag to CPU profiling agent for differentiation from memory profiling agent in Pyroscope UI. --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: houseme <housemecn@gmail.com>
This commit is contained in:
@@ -43,6 +43,8 @@ pub struct OtelGuard {
|
||||
pub(crate) logger_provider: Option<SdkLoggerProvider>,
|
||||
#[cfg(any(target_os = "linux", target_os = "macos"))]
|
||||
pub(crate) profiling_agent: Option<pyroscope::PyroscopeAgent<pyroscope::pyroscope::PyroscopeAgentRunning>>,
|
||||
#[cfg(any(target_os = "linux", target_os = "macos"))]
|
||||
pub(crate) memory_profiling_agent: Option<pyroscope::PyroscopeAgent<pyroscope::pyroscope::PyroscopeAgentRunning>>,
|
||||
/// Handle to the background log-cleanup task; aborted on drop.
|
||||
pub(crate) cleanup_handle: Option<tokio::task::JoinHandle<()>>,
|
||||
/// Worker guard that keeps the non-blocking `tracing_appender` thread
|
||||
@@ -60,6 +62,8 @@ impl std::fmt::Debug for OtelGuard {
|
||||
.field("logger_provider", &self.logger_provider.is_some());
|
||||
#[cfg(any(target_os = "linux", target_os = "macos"))]
|
||||
s.field("profiling_agent", &self.profiling_agent.is_some());
|
||||
#[cfg(any(target_os = "linux", target_os = "macos"))]
|
||||
s.field("memory_profiling_agent", &self.memory_profiling_agent.is_some());
|
||||
s.field("cleanup_handle", &self.cleanup_handle.is_some())
|
||||
.field("tracing_guard", &self.tracing_guard.is_some())
|
||||
.field("stdout_guard", &self.stdout_guard.is_some())
|
||||
@@ -101,6 +105,16 @@ impl Drop for OtelGuard {
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(any(target_os = "linux", target_os = "macos"))]
|
||||
if let Some(agent) = self.memory_profiling_agent.take() {
|
||||
match agent.stop() {
|
||||
Err(err) => eprintln!("Memory profiling agent stop error: {err:?}"),
|
||||
Ok(stopped) => {
|
||||
stopped.shutdown();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if let Some(handle) = self.cleanup_handle.take() {
|
||||
handle.abort();
|
||||
eprintln!("Log cleanup task stopped");
|
||||
|
||||
Reference in New Issue
Block a user