Technical Background
Programming Languages
OSPRep is written using PL/SQL and Unix Shell. While PL/SQL code is used to retrieve the information from the Oracle Database, Unix Shell code is used to construct the (anonymous) PL/SQL block (which is then executed) based on the users configuration. This way I realized the modular structure of OSPRep, just including those constructs in the finally executed code that we really need to execute, thus limiting the overhead e.g. for unnecessary parsing.
Collector PlugIns
OSPRep includes some collector plugins - i.e. modules additional to Oracle Statspack to gather more statistical data; not to confuse with the elements to be found in the plugins/ directory of the distribution. The latter ones are plugins used by the report generator, while the first ones are used to gather the statistics. Right now, there are three of these collector plugins available: one for gathering "Wait Objects" statistics, one for collecting information on data file growth, plus one to work around the Oracle bug 3926058 (wrong count of open cursors) which you will only need if you are affected by this bug but need accurate stats on open cursors.
In order to use these collector plugins, you of course have to install them first. For this, there are four SQL files available within the install/ directory. Instructions are to be found within the head of these files. After having them installed, don't forget to include a call to their procedures together with the statspack.snap() call (the get_waitevents and get_fileinfo procedures should be run directly after each snapshot).
Requirements
The requirements can directly be derived from the above paragraph and the intended goal: First, you need an Oracle Database Server up and running, otherwise there's nothing we can retrieve the information to report on. Second, the instance(s) of this Database Server Oracle Statspack is installed into (i.e. the ones holding a PERFSTAT schema OSPRep shall read information from) need to have PL/SQL installed, otherwise the code generated by OSPRep cannot be processed by them. Third, you need the Oracle Statspack to be installed and set up, plus having statspack.snap() run at least two times to gather some data OSPRep can report on. And last but not least, you need a Unix Shell (OSPRep works fine with the Bash Shell - other Shells have not been tested but may work as well). This does imply that OSPRep does run in *nix environments (Linux, Solaris, AIX, etc. - successfully tested just with RedHat Linux 7.x, other reports are welcome). There are Shell environments available for Windows as well, like with CygWin - but since I didn't test OSPRep in those environments I cannot guarantee that it will run with them; again, reports are welcome.
Limitations
OSPRep was tested successfully with Oracle versions 9.0.1 and 9.2 - which does not necessarily mean it will not run with other versions. As always, reports are very welcome especially if you successfully use OSPRep with Oracle versions < 9.0.1 or > 9.2, so I can correct this limitation here. For other limitations, please read the previous paragraph (Shell, PL/SQL, OSes).
w3cOSPRep © 2003-2007 by Itzchak Rehberg & IzzySoftIzzySoft