Re-animator Replayer is a tracing tool that is intended for extracting traces of any program or an application and then replaying their I/O behavior. It uses DataSeries, a binary format which provides a fast and efficient way to store and analyze traces. Our trace replayer follows SNIA's specification documents -- "POSIX System-Call Trace Common Semantics" and "IO Trace Common Semantics" -- which describe the system call fields, their types, and their values.
Re-animator Replayer can be used as a benchmarking tool to measure and reproduce the I/O performance under various workloads, or for analyzing the program traces for security purposes, etc.
For more information on the Re-Animator project, please see our paper Re-Animator: Versatile High-Fidelity Storage-System Tracing and Replaying.
Re-animator Replayer is under development by Ibrahim Umit Akgun of the File Systems and Storage Lab (FSL) at Stony Brook University under Professor Erez Zadok, with assistance from Professor Geoff Kuenning at Harvey Mudd College.
Requires bash.
-
Install the following required programs and libraries:
git cmake perl autoconf automake gcc g++ libtool libboost-dev libboost-thread-dev libboost-program-options-dev build-essential libxml2-dev zlib1g-dev libaio-dev
On Ubuntu 16 and 18, all the above requirements are available through the APT package manager.
-
Clone this repository and run
build-reanimator-replayer.sh
. This will place build files in the current directory underbuild/
and install thesystem-call-replayer
and other completed binaries and libraries underreanimator_replayer_release/
.- If invoked with
build-reanimator-replayer.sh --install
, the script will install include files and libraries under/usr/local/
- You may specify custom build and install directories with the command line options
--build-dir DIR
and--install-dir DIR
. Run./build-reanimator-replayer.sh --help
for a full list of options.
- If invoked with
system-call-replayer path/to/DataSeriesFile.ds
The system call replayer supports the following optional command line options:
Option | Description |
---|---|
-V [ --version ] |
Print version of system call replayer |
-h [ --help ] |
Produce help message |
-v [ --verbose ] |
System calls replay in verbose mode |
--verify |
Verifies that the data being written/read is exactly what was used originally |
-w [ --warn ] arg |
System call replays in warn mode |
-p [ --pattern ] arg |
Write repeated pattern data for write, pwrite, and writev system call |