Store profiling reports yourself

By default Sciagraph profiling uploads reports to a cloud server, which you can then download using the correct keys. However, you may wish to store the profiling reports yourself. For example, you might want to upload reports to AWS S3 or the equivalent when the batch job finishes. Or perhaps you’re already generating a report, and will want to include the profiling results in that report.

To help with this use case, in addition to uploading the report Sciagraph also stores the reports on local disk. The profiler will still need to communicate with the cloud server for authentication purposes, and the report will still be uploaded; if you need offline support please get in touch. Once the job is finished, you can store the resulting report elsewhere by copying the report’s files to wherever it is you want to store them.

The storage location for locally-stored reports

The default location for reports is a new directory of the form sciagraph-result/<timestamp> in the process’ current working directory. Depending on how you run Sciagraph, you can also configure a custom storage location.

Customizing, option #1: CLI

If you’re using the CLI, you can override the destination with the --output-path option:

$ python -m sciagraph --output-path ./profiling-report run yourprogram.py

Customizing, option #2: Environment variables

If you’re running Sciagraph with SCIAGRAPH_MODE=process, you can set the SCIAGRAPH_OUTPUT_PATH environment variable to customize where reports are stored.

$ export SCIAGRAPH_MODE=process
$ export SCIAGRAPH_OUTPUT_PATH=./profiling-report
$ python yourprogram.py

Your report will now be stored in the ./profiling-report directory.