urchin: Urchin Log Processing Engine


The Urchin Log Processing Engine, urchin, is the core log processing component of Urchin. Ordinarily, the log processing engine is invoked from the Urchin Scheduler (urchind) when a task is run. However, it is possible to execute urchin directly from a command shell to run a specific profile. This is useful in highly scripted environments where running a Urchin tasks from an external source such as the Windows Task Scheduler or cron on UNIX-type systems. It is also useful for running a profile under special circumstances, such as to process only hits for a particular day, or to do some type of debugging.

urchin is not truly a utility - it is documented here because it possesses some limited command-line capabilities that may prove useful in certain environments.


urchin is located in the bin directory of the Urchin distribution.

Usage of the utility is as follows:

  urchin [-h] (prints usage message and exits)
  urchin [-v] (prints version and exits)
  urchin [-DHt [-d YYYYMMDD] -p profile 
  -D  runs urchin in debug mode
  -H  causes the runtime output of urchin to be logged to the
      standard history directory for the profile
  -t  runs urchin in test mode only to output runtime parameters
  -d  specifies that Urchin should only process hits from logs that
      match the specified date (YYYYMMDD format)
  -p  specifies the profile to run


  • On UNIX-type systems, urchin should be run as the user/UID that Urchin is installed as to ensure that the databases for the profile are owned by that UID, since urchin will create them if they do not already exist.