-
Notifications
You must be signed in to change notification settings - Fork 76
Collecting provenance
Provenance metadata is generated by SPADE reporters. An arbitrary number of reporters can be added. The SPADE server integrates the provenance records coming from all of them.
We provide reporters for collecting operating-system-wide provenance on Linux, Mac OS X, Windows, and Android. Each of these monitor system call events and transform them into provenance semantics.
It is also possible to report provenance information through a programming interface. Note that each reporter is loaded by and runs as part of the SPADE server. Hence, implementing such a class requires handling the inter-process communication with the source from which the provenance is being collected.
To help a user start sending provenance information to SPADE directly, we have implemented a reporter that creates a named pipe in the filesystem, to which a user can send provenance information in a simple domain specific language, either manually or from an external program.
To learn more about these reporters, see select the corresponding items in the sidebar on the right.
This material is based upon work supported by the National Science Foundation under Grants OCI-0722068, IIS-1116414, and ACI-1547467. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.
- Setting up SPADE
- Storing provenance
-
Collecting provenance
- Across the operating system
- Limiting collection to a part of the filesystem
- From an external application
- With compile-time instrumentation
- Using the reporting API
- Of transactions in the Bitcoin blockchain
- Filtering provenance
- Viewing provenance
-
Querying SPADE
- Illustrative example
- Transforming query responses
- Protecting query responses
- Miscellaneous