The standard output and standard error streams of a program are typically directed to the user's terminal:
However, when the program is run by maze, maze's own stdout and stderr are forwarded to the terminal. In order to avoid confusion, and to allow the user to examine the results from each run separately, maze redirects the application std streams to the files:
The files are named after run numbers in the TEST mode: 1.out, 1.err, 2.out, 2.err, etc. They are stored in the directory .maze/pid/.
.maze is created under the run directory, unless the user specifies a different path.
pid is the process id of the maze TEST session itself, not the process id of the application.
Example:
The maze TEST session with a single run of a program foo:
$ maze foo
results in the following directory tree:
Maze in RECONSTRUCTION mode does not create a new directory. It stores the results in the directory created during the corresponding TEST mode session. The stdout and stderr streams are forwarded to the files run_number.pid.out and run_number.pid.err, respectively. run_number is the number of the TEST mode run being reproduced. pid is the process id of the maze RECONSTRUCTION mode session.
Example:
If we reproduce run # 1 from the previous TEST session:
$ maze
maze will redirect foo's stdout and stderr into the files .maze/345/1.897.out and .maze/345/1.897.err respectively: