trimhistory(8) Remove old Xymon history-log entries


trimhistory --cutoff=TIME [options]


The trimhistory tool is used to purge old entries from the Xymon history logs. These logfiles accumulate information about all status changes that have occurred for any given service, host, or the entire Xymon system, and is used to generate the event- and history-log webpages.

Purging old entries can be done while Xymon is running, since the tool takes care not to commit updates to a file if it changes mid-way through the operation. In that case, the update is aborted and the existing logfile is left untouched.

Optionally, this tool will also remove logfiles from hosts that are no longer defined in the Xymon hosts.cfg(5) file. As an extension, even logfiles from services can be removed, if the service no longer has a valid status-report logged in the current Xymon status.


This defines the cutoff-time when processing the history logs. Entries dated before this time are discarded. TIME is specified as the number of seconds since the beginning of the Epoch. This is easily generated by the GNU date(1) utility, e.g. the following command will trim history logs of all entries prior to Oct. 1st 2004:

    trimhistory --cutoff=`date +%s --date="1 Oct 2004"`

Normally, files in the XYMONHISTDIR directory are replaced. This option causes trimhistory to save the shortened history logfiles to another directory, so you can verify that the operation works as intended. The output directory must exist.

Causes trimhistory to delete files from hosts that are not listed in the hosts.cfg(5) file.

Causes trimhistory to delete files from services that are not currently tracked by Xymon. Normally these files would be left untouched if only the host exists.

Process the XYMONHISTLOGS directory also, and delete status-logs from events prior to the cut-off time. Note that this can dramatically increase the processing time, since there are often lots and lots of files to process.

This will cause trimhistory to output a status line for every N history logs or status-log collections it processes, to indicate how far it has progressed. The default setting for N is 100.

Loads the environment from FILENAME before executing trimhistory.

Enable debugging output.


The eventlog of all events that have happened in Xymon.

The per-host eventlogs.

The per-service eventlogs.

The historical status-logs.


The directory holding all history logs.

The top-level directory for the historical status-log collections.

The location of the hosts.cfg file, holding the list of currently known hosts in Xymon.