= Daemons =
'''Daemons''' are server programs that normally run continuously. Your project's daemons are described in its [ProjectConfigFile config.xml] file, with elements of the form:
{{{
feeder -d 3
[ host.domain.name ]
[ 0|1 ]
[ ]
[ filename ]
...
}}}
cmd::
The command used to start the daemon. Must be a program in the project's bin/ directory.
host::
Specifies the host on which the daemon should run. The default is the project's main host, as specified in config.xml.
disabled::
If nonzero, ignore this entry
output::
Name of output file (in the log_HOSTNAME directory). Defaults to the program name followed by '.log'. If you're running multiple instances of a daemon on one host, you must specify this.
pid_file::
Name of file used to store the process ID (in the pid_HOSTNAME directory). Defaults to the program name followed by '.pid'. If you're running multiple instances of a daemon on one host, you must specify this.
Daemons are started when you run the [StartTool bin/start] script, and killed (by a SIGHUP signal) when you run [StartTool bin/stop].
Typically, this mechanism is used to run [BackendPrograms work handling daemons]. Projects that use trickle-up messages will also need to have a [TrickleMessages trickle-up handler].