mizumochi

Crates.iomizumochi
lib.rsmizumochi
version0.1.0
sourcesrc
created_at2018-06-25 06:23:53.114261
updated_at2018-06-25 06:23:53.114261
descriptionmizumochi is a tool to simulate unstable disk I/O for testing stability/robustness of system. The word unstable here means read/write speed is slowdown.
homepagehttps://github.com/dwango/mizumochi
repositoryhttps://github.com/dwango/mizumochi
max_upload_size
id71571
size75,147
rust (github:dwango:rust)

documentation

README

mizumochi

Crates.io Crates.io License: Apache OR License: MIT

mizumochi is a tool to simulate unstable disk I/O for testing stability/robustness of system.
The word unstable here means read/write speed is slowdown.

We assume mizumochi works on develop environment with target system.

zargony/rust-fuse are used to maps actual files in the given directory to files on the mountpoint. Note that some FUSE callbacks (e.g., link) are not implemented yet. (work in progress)

Install

You have to install OSXFUSE for macOS or FUSE for Linux before installing mizumochi.

cargo install mizumochi

Features

  • Mode
    • Periodic
      • The stable/unstable is toggled periodically.
  • Interfaces
    • Command line interface (CLI)
      • CLI is primary interface.
      • Refers mizumochi --help in details.
    • HTTP API
      • There are some TODOs.
      • The config (e.g., speed, condition to switch stable/unstable) can be modified on runtime via this interface.

Examples

# Emulate files in `real_dir` at `emulated_dir` and the read/write speed is slowdown every 30 minutes for 10 minutes.
mizumochi /tmp/emulated_dir/ /tmp/real_dir/ --speed 1024KBps periodic --duration 10m --frequency 30m

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Commit count: 16

cargo fmt