The Slash Daemon and Tasks

As implied way back in Section 1.5 in Chapter 1, Slash relies on several external processes to do things outside the standard web publishing cycle. Some tasks need to happen at predetermined times (e.g., rotating logs and mailing out daily headline lists). Other jobs, such as doling out moderator points, take up time or memory that a mod_perl process cannot spare.


The venerable slashd daemon is the parent and guardian of all tasks. For each unique site, it schedules and launches all tasks found in the site’s tasks/ directory. Slash installs slashd to launch as a system daemon at boot time, so it should always be running when any Slash site is accessible. Each Slash site has its own slashd process. The only difference between these instances is that each will use the virtual user appropriate to its assigned site.

As it runs, slashd writes copious information to the slashd.log file beneath the associated site’s logs/ directory. (The slashd running for ghostwheel will write its log to /usr/local/slash/site/ghostwheel/logs/slashd.log). If a site appears to be “stuck,” check this log to make sure that the daemon is running as expected. The slashd_verbosity configuration variable controls the amount of logging. slashd checks this variable regularly, so an administrator can temporarily raise the debugging level and monitor the log if problems arise. The available values are 0, 1, and 2.

At level 0, slashd will log errors and warnings, slashd startup ...

Get Running Weblogs with Slash now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.