---
name: "trimhistory"
section: "8"
platform: "linux"
package: "xymon"
version: "4.3.30-4"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/trimhistory"
---

# trimhistory(8)

Remove old Xymon history-log entries

## NAME

trimhistory - Remove old Xymon history-log entries

## SYNOPSIS

**trimhistory --cutoff=TIME \[options\]**

## DESCRIPTION

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)](/hosts.cfg/5.md)* 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.

## OPTIONS

- \--cutoff=TIME

  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)](/date/1.md)* 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"\`

- \--outdir=DIRECTORY

  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.

- \--drop

  Causes trimhistory to delete files from hosts that are not listed in the *[hosts.cfg(5)](/hosts.cfg/5.md)* file.

- \--dropsvcs

  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.

- \--droplogs

  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.

- \--progress\[=N\]

  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.

- \--env=FILENAME

  Loads the environment from FILENAME before executing trimhistory.

- \--debug

  Enable debugging output.

## FILES

- $XYMONHISTDIR/allevents

  The eventlog of all events that have happened in Xymon.

- $XYMONHISTDIR/HOSTNAME

  The per-host eventlogs.

- $XYMONHISTDIR/HOSTNAME.SERVICE

  The per-service eventlogs.

- $XYMONHISTLOGS/\*/\*

  The historical status-logs.

## ENVIRONMENT VARIABLES

- XYMONHISTDIR

  The directory holding all history logs.

- XYMONHISTLOGS

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

- HOSTSCFG

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

## SEE ALSO

[xymon(7)](/xymon/7.md), [hosts.cfg(5)](/hosts.cfg/5.md)
