Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: Merge v3.15.0 from upstream #11

Merged
merged 22 commits into from
May 10, 2024
Merged

chore: Merge v3.15.0 from upstream #11

merged 22 commits into from
May 10, 2024

Conversation

krispraws
Copy link

Need to pull in this bug fix: iopsystems#259

Changes

brayniac and others added 20 commits April 18, 2024 15:09
Begin next development iteration
Adds an example Grafana + Prometheus dashboard to the repo.
Adds a distribution that tracks the amount of time tasks spent
off-CPU, not including runqueue wait.
Adds a sampler that tracks open file descriptors using procfs on
linux.
Address compiler and clippy warnings throughout the code.
Bumps dependency versions in the manifest for all crates except
those for BPF and nvml support.
…h 10 updates (iopsystems#245)

Bumps the cargo-dependencies group with 9 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [serde_json](https://github.com/serde-rs/json) | `1.0.115` | `1.0.116` |
| [cc](https://github.com/rust-lang/cc-rs) | `1.0.94` | `1.0.95` |
| [proc-macro2](https://github.com/dtolnay/proc-macro2) | `1.0.80` | `1.0.81` |
| [rmp](https://github.com/3Hren/msgpack-rust) | `0.8.12` | `0.8.14` |
| [rmp-serde](https://github.com/3Hren/msgpack-rust) | `1.1.2` | `1.2.0` |
| [rustix](https://github.com/bytecodealliance/rustix) | `0.38.32` | `0.38.34` |
| [signal-hook-registry](https://github.com/vorner/signal-hook) | `1.4.1` | `1.4.2` |
| [thiserror](https://github.com/dtolnay/thiserror) | `1.0.58` | `1.0.59` |
| [winapi-util](https://github.com/BurntSushi/winapi-util) | `0.1.6` | `0.1.7` |



Updates `serde_json` from 1.0.115 to 1.0.116
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](serde-rs/json@v1.0.115...v1.0.116)

Updates `cc` from 1.0.94 to 1.0.95
- [Release notes](https://github.com/rust-lang/cc-rs/releases)
- [Commits](rust-lang/cc-rs@1.0.94...1.0.95)

Updates `proc-macro2` from 1.0.80 to 1.0.81
- [Release notes](https://github.com/dtolnay/proc-macro2/releases)
- [Commits](dtolnay/proc-macro2@1.0.80...1.0.81)

Updates `rmp` from 0.8.12 to 0.8.14
- [Release notes](https://github.com/3Hren/msgpack-rust/releases)
- [Commits](https://github.com/3Hren/msgpack-rust/commits/rmp/v0.8.14)

Updates `rmp-serde` from 1.1.2 to 1.2.0
- [Release notes](https://github.com/3Hren/msgpack-rust/releases)
- [Commits](https://github.com/3Hren/msgpack-rust/commits/rmp-serde/v1.2.0)

Updates `rustix` from 0.38.32 to 0.38.34
- [Release notes](https://github.com/bytecodealliance/rustix/releases)
- [Commits](bytecodealliance/rustix@v0.38.32...v0.38.34)

Updates `signal-hook-registry` from 1.4.1 to 1.4.2
- [Changelog](https://github.com/vorner/signal-hook/blob/master/CHANGELOG.md)
- [Commits](vorner/signal-hook@registry-v1.4.1...registry-v1.4.2)

Updates `thiserror` from 1.0.58 to 1.0.59
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](dtolnay/thiserror@1.0.58...1.0.59)

Updates `thiserror-impl` from 1.0.58 to 1.0.59
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](dtolnay/thiserror@1.0.58...1.0.59)

Updates `winapi-util` from 0.1.6 to 0.1.7
- [Commits](BurntSushi/winapi-util@0.1.6...0.1.7)

---
updated-dependencies:
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: cc
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: proc-macro2
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: rmp
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: rmp-serde
  dependency-type: indirect
  update-type: version-update:semver-minor
  dependency-group: cargo-dependencies
- dependency-name: rustix
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: signal-hook-registry
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: thiserror
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: thiserror-impl
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: winapi-util
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Adds configuration for the logging level to the config file.
…h 16 updates (iopsystems#250)

Bumps the cargo-dependencies group with 12 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [libc](https://github.com/rust-lang/libc) | `0.2.153` | `0.2.154` |
| [serde](https://github.com/serde-rs/serde) | `1.0.198` | `1.0.199` |
| [async-compression](https://github.com/Nullus157/async-compression) | `0.4.8` | `0.4.9` |
| [data-encoding](https://github.com/ia0/data-encoding) | `2.5.0` | `2.6.0` |
| [fastrand](https://github.com/smol-rs/fastrand) | `2.0.2` | `2.1.0` |
| [flate2](https://github.com/rust-lang/flate2-rs) | `1.0.28` | `1.0.30` |
| [hashbrown](https://github.com/rust-lang/hashbrown) | `0.14.3` | `0.14.5` |
| [lock_api](https://github.com/Amanieu/parking_lot) | `0.4.11` | `0.4.12` |
| [parking_lot](https://github.com/Amanieu/parking_lot) | `0.12.1` | `0.12.2` |
| [parking_lot_core](https://github.com/Amanieu/parking_lot) | `0.9.9` | `0.9.10` |
| [socket2](https://github.com/rust-lang/socket2) | `0.5.6` | `0.5.7` |
| [winapi-util](https://github.com/BurntSushi/winapi-util) | `0.1.7` | `0.1.8` |



Updates `libc` from 0.2.153 to 0.2.154
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](rust-lang/libc@0.2.153...0.2.154)

Updates `serde` from 1.0.198 to 1.0.199
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](serde-rs/serde@v1.0.198...v1.0.199)

Updates `async-compression` from 0.4.8 to 0.4.9
- [Release notes](https://github.com/Nullus157/async-compression/releases)
- [Changelog](https://github.com/Nullus157/async-compression/blob/main/CHANGELOG.md)
- [Commits](https://github.com/Nullus157/async-compression/commits)

Updates `brotli` from 4.0.0 to 5.0.0
- [Release notes](https://github.com/dropbox/rust-brotli/releases)
- [Commits](dropbox/rust-brotli@4.0.0...5.0.0)

Updates `brotli-decompressor` from 3.0.0 to 4.0.0
- [Commits](https://github.com/dropbox/rust-brotli-decompressor/commits/4.0.0)

Updates `data-encoding` from 2.5.0 to 2.6.0
- [Commits](https://github.com/ia0/data-encoding/commits)

Updates `fastrand` from 2.0.2 to 2.1.0
- [Release notes](https://github.com/smol-rs/fastrand/releases)
- [Changelog](https://github.com/smol-rs/fastrand/blob/master/CHANGELOG.md)
- [Commits](smol-rs/fastrand@v2.0.2...v2.1.0)

Updates `flate2` from 1.0.28 to 1.0.30
- [Release notes](https://github.com/rust-lang/flate2-rs/releases)
- [Commits](rust-lang/flate2-rs@1.0.28...1.0.30)

Updates `hashbrown` from 0.14.3 to 0.14.5
- [Changelog](https://github.com/rust-lang/hashbrown/blob/master/CHANGELOG.md)
- [Commits](rust-lang/hashbrown@v0.14.3...v0.14.5)

Updates `lock_api` from 0.4.11 to 0.4.12
- [Changelog](https://github.com/Amanieu/parking_lot/blob/master/CHANGELOG.md)
- [Commits](Amanieu/parking_lot@lock_api-0.4.11...lock_api-0.4.12)

Updates `parking_lot` from 0.12.1 to 0.12.2
- [Changelog](https://github.com/Amanieu/parking_lot/blob/master/CHANGELOG.md)
- [Commits](Amanieu/parking_lot@0.12.1...0.12.2)

Updates `parking_lot_core` from 0.9.9 to 0.9.10
- [Changelog](https://github.com/Amanieu/parking_lot/blob/master/CHANGELOG.md)
- [Commits](Amanieu/parking_lot@core-0.9.9...core-0.9.10)

Updates `redox_syscall` from 0.4.1 to 0.5.1

Updates `serde_derive` from 1.0.198 to 1.0.199
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](serde-rs/serde@v1.0.198...v1.0.199)

Updates `socket2` from 0.5.6 to 0.5.7
- [Release notes](https://github.com/rust-lang/socket2/releases)
- [Changelog](https://github.com/rust-lang/socket2/blob/master/CHANGELOG.md)
- [Commits](rust-lang/socket2@v0.5.6...v0.5.7)

Updates `winapi-util` from 0.1.7 to 0.1.8
- [Commits](BurntSushi/winapi-util@0.1.7...0.1.8)

---
updated-dependencies:
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: async-compression
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: brotli
  dependency-type: indirect
  update-type: version-update:semver-major
  dependency-group: cargo-dependencies
- dependency-name: brotli-decompressor
  dependency-type: indirect
  update-type: version-update:semver-major
  dependency-group: cargo-dependencies
- dependency-name: data-encoding
  dependency-type: indirect
  update-type: version-update:semver-minor
  dependency-group: cargo-dependencies
- dependency-name: fastrand
  dependency-type: indirect
  update-type: version-update:semver-minor
  dependency-group: cargo-dependencies
- dependency-name: flate2
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: hashbrown
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: lock_api
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: parking_lot
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: parking_lot_core
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: redox_syscall
  dependency-type: indirect
  update-type: version-update:semver-minor
  dependency-group: cargo-dependencies
- dependency-name: serde_derive
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: socket2
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: winapi-util
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Adds a sampler which gets network interface statistics from /sys
The previous BPF histogram indexing was based on a simplification of the
algorithm in an older version of the histogram crate that had both
an a and b component. The latest histogram crate replaced those
with a single grouping power.

This change brings the indexing more in-line with the Rust version.
Specific simplifications and optimizations are made based on the
parameters that we use throughout Rezolus.
Remove old macros since we now use the attribute macros everywhere.
Adds a new interval type so we can reduce code repitition across
the samplers.
Refactoring of the BPF histogram handling code
…stems#254)

Bumps the cargo-dependencies group with 17 updates:

| Package | From | To |
| --- | --- | --- |
| [histogram](https://github.com/pelikan-io/rustcommon) | `0.10.0` | `0.10.1` |
| [serde](https://github.com/serde-rs/serde) | `1.0.199` | `1.0.200` |
| [libbpf-sys](https://github.com/libbpf/libbpf-sys) | `1.4.0+v1.4.0` | `1.4.1+v1.4.0` |
| [anstream](https://github.com/rust-cli/anstyle) | `0.6.13` | `0.6.14` |
| [anstyle](https://github.com/rust-cli/anstyle) | `1.0.6` | `1.0.7` |
| [anstyle-parse](https://github.com/rust-cli/anstyle) | `0.2.3` | `0.2.4` |
| [anstyle-query](https://github.com/rust-cli/anstyle) | `1.0.2` | `1.0.3` |
| [anstyle-wincon](https://github.com/rust-cli/anstyle) | `3.0.2` | `3.0.3` |
| [autocfg](https://github.com/cuviper/autocfg) | `1.2.0` | `1.3.0` |
| [cc](https://github.com/rust-lang/cc-rs) | `1.0.95` | `1.0.97` |
| [colorchoice](https://github.com/rust-cli/anstyle) | `1.0.0` | `1.0.1` |
| [num-traits](https://github.com/rust-num/num-traits) | `0.2.18` | `0.2.19` |
| [rmp-serde](https://github.com/3Hren/msgpack-rust) | `1.2.0` | `1.3.0` |
| [serde_derive](https://github.com/serde-rs/serde) | `1.0.199` | `1.0.200` |
| [tokio-util](https://github.com/tokio-rs/tokio) | `0.7.10` | `0.7.11` |
| [zerocopy](https://github.com/google/zerocopy) | `0.7.32` | `0.7.33` |
| [zerocopy-derive](https://github.com/google/zerocopy) | `0.7.32` | `0.7.33` |


Updates `histogram` from 0.10.0 to 0.10.1
- [Commits](https://github.com/pelikan-io/rustcommon/commits)

Updates `serde` from 1.0.199 to 1.0.200
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](serde-rs/serde@v1.0.199...v1.0.200)

Updates `libbpf-sys` from 1.4.0+v1.4.0 to 1.4.1+v1.4.0
- [Commits](https://github.com/libbpf/libbpf-sys/commits)

Updates `anstream` from 0.6.13 to 0.6.14
- [Commits](rust-cli/anstyle@anstream-v0.6.13...anstream-v0.6.14)

Updates `anstyle` from 1.0.6 to 1.0.7
- [Commits](rust-cli/anstyle@v1.0.6...v1.0.7)

Updates `anstyle-parse` from 0.2.3 to 0.2.4
- [Commits](rust-cli/anstyle@anstyle-parse-v0.2.3...anstyle-parse-v0.2.4)

Updates `anstyle-query` from 1.0.2 to 1.0.3
- [Commits](rust-cli/anstyle@anstyle-query-v1.0.2...anstyle-query-v1.0.3)

Updates `anstyle-wincon` from 3.0.2 to 3.0.3
- [Commits](rust-cli/anstyle@anstyle-wincon-v3.0.2...anstyle-wincon-v3.0.3)

Updates `autocfg` from 1.2.0 to 1.3.0
- [Commits](cuviper/autocfg@1.2.0...1.3.0)

Updates `cc` from 1.0.95 to 1.0.97
- [Release notes](https://github.com/rust-lang/cc-rs/releases)
- [Commits](rust-lang/cc-rs@1.0.95...1.0.97)

Updates `colorchoice` from 1.0.0 to 1.0.1
- [Commits](rust-cli/anstyle@colorchoice-v1.0.0...colorchoice-v1.0.1)

Updates `num-traits` from 0.2.18 to 0.2.19
- [Changelog](https://github.com/rust-num/num-traits/blob/master/RELEASES.md)
- [Commits](rust-num/num-traits@num-traits-0.2.18...num-traits-0.2.19)

Updates `rmp-serde` from 1.2.0 to 1.3.0
- [Release notes](https://github.com/3Hren/msgpack-rust/releases)
- [Commits](3Hren/msgpack-rust@rmp-serde/v1.2.0...rmp-serde/v1.3.0)

Updates `serde_derive` from 1.0.199 to 1.0.200
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](serde-rs/serde@v1.0.199...v1.0.200)

Updates `tokio-util` from 0.7.10 to 0.7.11
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](tokio-rs/tokio@tokio-util-0.7.10...tokio-util-0.7.11)

Updates `zerocopy` from 0.7.32 to 0.7.33
- [Release notes](https://github.com/google/zerocopy/releases)
- [Changelog](https://github.com/google/zerocopy/blob/main/CHANGELOG.md)
- [Commits](google/zerocopy@v0.7.32...v0.7.33)

Updates `zerocopy-derive` from 0.7.32 to 0.7.33
- [Release notes](https://github.com/google/zerocopy/releases)
- [Changelog](https://github.com/google/zerocopy/blob/main/CHANGELOG.md)
- [Commits](google/zerocopy@v0.7.32...v0.7.33)

---
updated-dependencies:
- dependency-name: histogram
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: libbpf-sys
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: anstream
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: anstyle
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: anstyle-parse
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: anstyle-query
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: anstyle-wincon
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: autocfg
  dependency-type: indirect
  update-type: version-update:semver-minor
  dependency-group: cargo-dependencies
- dependency-name: cc
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: colorchoice
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: num-traits
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: rmp-serde
  dependency-type: indirect
  update-type: version-update:semver-minor
  dependency-group: cargo-dependencies
- dependency-name: serde_derive
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: tokio-util
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: zerocopy
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: zerocopy-derive
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Wraps the `Bpf` struct in a new type with an associated builder to
allow more friendly initialization of the userspace for a given
BPF program.

This paves the way for a future PR to add dynamic distribution
registration by splitting static initialization from runtime
operations against the `Bpf` struct.
Adds serde defaults to the config so that when possible, sections
can be omitted and populated with a reasonable default.
Adds config options to enable/disable bpf samplers. This can be set
on a per-sampler basis, or globally, and enables better control
when a sampler can get some data without bpf.
Update changelog and prepare for release 3.15.0
@krispraws krispraws merged commit 501c7a8 into main May 10, 2024
37 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Can't disable cpu usage sampler
3 participants