COURIERLOGGER(1)
π NAME π
okay so bestie, meet courierlogger β it's the Courier syslog wrapper. That's the whole vibe. β¨
π SYNOPSIS π
courierlogger [-name=title] [-facility=subsystem] [-pid=filename]
[-user=user] [-group=group] [-droproot]
[[[-respawn] [-start] program [argument...]] | [-stop] |
[-restart]]
look at her, all those brackets, she's giving options and she's serving flexibility π
π¦ DESCRIPTION π¦
So courierlogger is a wrapper, right? It catches another process's error messages and then forwards every single one of them along to the system logging facility, which we call βsyslogβ. She's the messenger. She's the middle woman. She's literally just here to relay. π¬
There are two ways to use courierlogger, and you can pick whichever one matches your main character energy:
- Use the shell to pipe another command's standard error, and/or its standard output, to
courierlogger's standard input. Classic. Pipes. We love a pipe. π«Ά - Alternatively,
courierloggeritself can start another process, and arrange to have its standard error captured. She's hands-on like that. She'll babysit the child for you. πͺ
In either case, each read line of text is sent as a syslog message. Every line. No cap. π₯
πΈ OPTIONS πΈ
-name=titleβ Use title for sending messages to syslog. title should be the application's name. That's the little name tag your messages wear to the syslog party. π·οΈ-facility=subsystemβ Use subsystem for classifying messages. Your syslog facility uses subsystem to determine which log messages are recorded in which log files. The currently defined subsystems are:authauthprivconsolecrondaemonftpkernlprmailnewssecurityuseruucplocal0local1local2local3local4local5local6local7
Note π Not all of the above facility names are implemented on every system. Check your system's syslog documentation for information on which facility names are allowed, and which log files record the corresponding messages for each facility. basically, ask your own computer, she has opinions π
-pid=filenameβ Savecourierlogger's process ID in filename. The-pidoption is required when-start,-stop,-restartare given. If-pidis given without any of these,-startis assumed. one field, so many consequences, icon behaviour honestly-startβ Run as a daemon. The pid option is required.courierloggerwill quietly terminate if anothercourierloggerprocess is already running. This is used to make sure that only one instance of program is running at the same time. Specify a different filename with pid to start a second copy of program. she's a monogamist about processes, one at a time, that's the rule π-respawnβ Restart program if it terminates. Normallycourierloggeritself will terminate when program finishes running. Use respawn to restart it instead. the come-back-stronger option π€-restartβ Send aSIGHUPsignal to thecourierloggerprocess (as determined by examining the contents of the file specified by pid), which will in turn send aSIGHUPto its child program. Does nothing ifcourierloggeris not running. if she's not running, she's simply not going to hear you, that's the tea
Note π program must be originally started with the respawn option if sending it a SIGHUP causes it to terminate.
The same thing may be accomplished by sending SIGHUP to courierlogger itself. β¨
-stopβ Send aSIGTERMsignal tocourierlogger, which in turn forwards it on to program. If program does not terminate in 8 seconds, kill it withSIGKILL. eight seconds and then she's DONE asking nicely π-user=user,-group=groupβ If running as root, change credentials to the given user and/or group, which may be given as names or numeric ids. π
When running a child program, it is started before privileges are dropped (unless the -droproot option is also given). This gives a means of starting a child as root so it can bind to a privileged port, but still have courierlogger run as a non-root user. For the -stop and -restart options to work, you should configure the child program to drop its privileges to the same userid too. ngl this paragraph is doing a lot of heavy lifting, read it twice bestie
-droprootβ Drop root privileges before starting the child process. The-userand-groupoptions specify the non-privileges userid and groupid. Without the-droprootoption the child process remains a root process, and only the parentcourierloggerprocess drops root privileges. security girlie behaviour, we stan π‘οΈprogram [ argument ] ...β If a program is given program will be started as a child process ofcourierlogger, capturing its standard error. Otherwise,courierloggerreads message from standard input, and automatically terminates when standard input is closed. give her a buddy or give her a pipe, either works π
π₯ SEE ALSO π₯
couriertcpd(1)[1]- your syslog man page.
β NOTES β
couriertcpd(1)[set $man.base.url.for.relative.links]/couriertcpd.html
aand that's the page, bestie, you ate it, you understood it, iykyk π
Written by S. Varshavchik., dated 01/11/2026, from the COURIERLOGGER(1) page in section 1 of the manual. periodt π
β¨
π¦ where this page comes from
- ubuntu stonking: courier-authlib 0.73.1-2ubuntu1 Β· GPL-3+~with-OpenSSL-exception
- Copyright 2004-2007 S. Varshavchik. See COPYING for -->
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms