tetherless-world / opendap

Provenance trace and pingback services for OPeNDAP using Prizms.
http://opendap.tw.rpi.edu
1 stars 1 forks source link

OPeNDAP pipeline provenance capture widget-a-ma-thing #25

Open timrdf opened 10 years ago

timrdf commented 10 years ago

We need modifications to BES (or whatever) to capture provenance of the respond handling.

mrpatrickwest commented 10 years ago

One option is to create a new module, and in that module we add a reporter to the reporter list. Basically, a reporter is something that can "report" on a request. For example, in another project of ours, we log to a relational database who accessed what file, what they requested, and how they requested it. And we run reports based on that relational database table.

The information logged can be retrieved from the BESDataHandlerInterface object that is passed around during the request.

mrpatrickwest commented 10 years ago

Created a new prov_module in /home/pwest/prizms/opendap/opendap/prov_module. It has the ProvModule class, that is loaded and executed during BES initialization. The module adds a request handler (ProvRequestHandler) that handles requests for version and help requests (adds information about itself to these requests). And the module adds the ProvReporter class to the reporter list. All reporters are invoked at the end of a request.

Committed and pushed the module to github.

To build, cd into prov_module and do the following

% autoreconf --force --install % ./configure % make

should build it with no errors or warnings

timrdf commented 10 years ago

Documentation for implementation of the "prov_module" is now at https://github.com/tetherless-world/opendap/wiki/OPeNDAP-PROV-Module