scc(4)




NAME

       scc - file formats used by SCC


RELEASE

       scc  1.26.73


DESCRIPTION

       SCC  stores  configuration data from systems in flat files called snap-
       shots. All configuration data is structured  by	prefixing  it  with  a
       fixed-variable  indication and with a hierarchical classification.  The
       indication, all elements of the classification  and  the	 configuration
       data are separated by colons.

       By  comparing two consecutive snapshots after selecting the fixed data,
       we are able to maintain a logbook of a system.  Lines  in  the  logbook
       also consist of colon separated fields.


SNAPSHOTS

       The contents of the file /var/adm/cron/cron.allow are stored in a snap-
       shot in the following way:

	  fix:software:cron:configuration::/var/adm/cron/cron.allow:root
	  fix:software:cron:configuration::/var/adm/cron/cron.allow:adm
	  fix:software:cron:configuration::/var/adm/cron/cron.allow:uucp


       After the indicator "fix" for fixed data, there is at least  one	 level
       of  hierarchical classifications of the remaining data. The classifica-
       tion and the data are separated by two consecutive colons.

       When this file is altered (uucp should not run cron-jobs), the  missing
       line is reported in the logbook.	 The reported data contains the change
       itself (uucp)  and  the	classification	of  the	 altered  data	(soft-
       ware:cron:configuration::/var/adm/cron/cron.allow:).  Without the clas-
       sification SCC only could have reported that a user has been removed.


CLASSIFICATIONS

       For some items help info is generated, that is  prefixed	 with  "hlp:".
       During  the collection process, statistics are generated, that are pre-
       fixed with "stats:".

       The output of scc-collect is checked by scc-log. Any line that does not
       start  with  "fix:",  "var:",  "hlp:"  or  "stats:"  is	prefixed  with
       "fix:messages::", indicating unexpected output from one of the commands
       used  by scc-collect.  As the html-file groups data per classification,
       the original snapshot has to be inspected to locate the commands	 caus-
       ing this output.

       The snapshot is converted to a hierarchical menu. Therefore the follow-
       ing combination of classifications cannot be used:

	  fix:software:myprogram::
	  fix:software:myprogram:config::


       The first classification results in html-code to access "myprogram"  as
       an option in the sub-menu "software".  The second classification should
       result in html-code to access a	sub-menu  "myprogram"  containing  the
       option "config".

       It  is  the  responsibility  of the developer to ensure a correct menu-
       structure by using the correct classifications in  scc-collect  and  in
       the plugins.  This kind of errors is detected and reported in the snap-
       shot by scc-collect.


LOGBOOK

       Two consecutive snapshots are compared using diff. The resulting output
       is altered to indicate the old and the new configuration. When the user
       uucp is removed from cron.allow, the following data  is	added  to  the
       logbook:

	  2001-09-12:11.18.46:result::different
	  2001-09-12:11.18.46:remark::
	  2001-09-12:11.18.46:count::1
	  2001-09-12:11.18.46:previous date::2001-09-08
	  2001-09-12:11.18.46:previous time::07.37.46
	  2001-09-12:11.18.46:data::old::software:cron:configuration::
	    /var/adm/cron/cron.allow:uucp

       For clarity the last line has been folded.

       Again we see colon separated fields. The first fields indicate the date
       and time of the change. Then there is a classification of the remaining
       fields, separated by two, consecutive colons from the differences.  The
       classification is limited to: result,  remark,  count,  previous	 date,
       previous time and data.

       After  reporting	 the result and some administrivia, finally the actual
       change is reported. The keyword old indicates that this data  was  only
       present	in  the	 old snapshot. So it has been removed from the current
       configuration of the system.

       When a client is configured (via scc-localize) to use context diff, the
       "old:"  and  "new:"  types of data are extended with the "ctx:" type to
       indicate the contect of the difference. These lines do  not  count  for
       the numner of detected changes.


KEEP-FILE

       The  keep-file is used to store data that is obtained from running pro-
       cesses, that might not be running during the next run of scc.  To avoid
       changes	in  the	 logbook  any time such a process temporarily does not
       run, the obtained data is stored in a keep-file.	 scc-collect uses  the
       data  in this file when the processes are not running.  Examples of the
       data in the keep-file are apache-configuration data and rpm-data.   The
       latter  data should be recorded in the keep-file as the rpm-database is
       locked during installs and rpm does not return  any  data  when	it  is
       queried during an install.

       The format of the keep-file looks like the format of the snapshots.  It
       consists of lines with colon-separated fields.  Leading fields are used
       to  identify the data.  The contents of the keep-file are determined by
       scc-collect.

       The keep-file is removed during	the  installation  of  SCC  to	enable
       upgrades of the format of this file. This results in the "feature" that
       SCC is unable to record its own upgrade on a RPM-system.


COPYRIGHT

       SCC is free software under the terms of the GNU General Public License.
       Copyright (C) 2001-2004 Open Challenge B.V., 2004-2005 OpenEyeT Profes-
       sional Services, 2005-2018 QNH, 2019 Siem Korteweg.


SEE ALSO

       scc(1), scc-cmp(1), scc-collect(1), scc-log(1), scc-log2html(1),
       scc-plugin(1), scc-snap2html(1), scc(4), scc(5)


VERSION

       $Revision: 6216 $