The Code
accounts
The main script. This controls the interaction of the following objects:
- $fiscrpt = Fiscrpt->new()
-
Represents the data --- an abstraction of a given input file,
for example /var/adm/acct/fiscrpt??.
- $streams = Output_Streams->new()
-
Facilitates logging and error output streams useful for debugging,
verifying what data has been read, recognised, not recognised, and what
has been produced...
- $out (polymorphic)
-
The main output stream. The implementation of $out is chosen
from SGML (REML in fact, which is easily converted to HTML suitable for
web pages or TeX suitable for hardcopy) or CSV (suitable for input to
a spreadsheet).
- $analyser (polymorphic)
-
Contains the code to parse the input data and produce the desired
stats. The implementation of $analyser is chosen, in turn, to
correspond to the summary represented by each of the page sub-sequences.
Fiscrpt.pm
An abstraction of the human-readable (ascii) accounting files. A given
file is first converted into a sequence of pages; this seqence is
divided into a set of sub-sequences (by use of Recognition.pm),
each sub-sequence representing one data-summary.
Recognition.pm
Used by Fiscrpt.pm. Contains heuristics designed to recognise
the various data summaries which appear in the human-readable (ascii)
accounting file. Attempts are made to match some regular expressions
against expected strings within page titles. The results of these
are used to guess the type of data given in the page and whether the page
is the beginning of a sub-sequence or not.
Output_Streams.pm
UsersSumsAnalyser.pm, CmdsSumsAnalyser and
LastLogsAnalyser
REML.pm and CSV.pm
Bits.pm
About this document:
Produced from the SGML: /home/isd/public_html/_solaris_accounting/_reml_grp/index.reml
On: 16/5/2002 at 14:0:47
Options: reml2 -i noindex -l long -o html -p multiple