table of contents
NAME¶logger - a shell command interface to the syslog(3) system log module
SYNOPSIS¶logger [options] [message]
DESCRIPTION¶logger makes entries in the system log. It provides a shell command interface to the syslog(3) system log module.
- -d, --udp
- Use datagram (UDP) only. By default the connection is tried to the syslog port defined in /etc/services, which is often 514.
- -h, --help
- Display help text and exit.
- -i, --id
- Log the process ID of the logger process with each line.
- -n, --server server
- Write to the specified remote syslog server instead of to the builtin syslog routines. Unless --udp or --tcp is specified, logger will first try to use UDP, but if thist fails a TCP connection is attempted.
- -P, --port port
- Use the specified port.
- -f, --file file
- Log the contents of the specified file. This option cannot be combined with a command-line message.
- -p, --priority priority
- Enter the message into the log with the specified priority. The priority may be specified numerically or as a facility.level pair. For example, -p local3.info logs the message as informational in the local3 facility. The default is user.notice.
- Look for a syslog prefix on every line read from standard input. This prefix is a number within angle brackets that contains both the facility and the level. This decimal prefix is constructed by multiplying the facility by 8 and then adding the level. Thus, for example, local0.info, facility=16 and level=6, becomes <134>. If the prefix contains no facility, the facility defaults to what is specified by the -p option. Similarly, if no prefix is provided, the line is logged using the -p priority. This option doesn't affect a command-line message.
- -s, --stderr
- Output the message to standard error as well as to the system log.
- -T, --tcp
- Use stream (TCP) only. By default the connection is tried to the syslog-conn port defined in /etc/services, which is often 601.
- -t, --tag tag
- Mark every line to be logged with the specified tag.
- -u, --socket socket
- Write to the specified socket instead of to the builtin syslog routines.
- --journald [file]
- Write systemd journal entry. The entry is read from stdin or input file. Each new line must begin with a field that is accepted by journald, see systemd.journal-fields(7) for details. Use of MESSAGE_ID field is generally good idea, as they make finding entries easy.
$ printf "%s\n%s\n%s\n" MESSAGE_ID=86184c3b1aa444f58ebe7b30fec1438b DOGS=bark "CARAVAN=goes on" | logger --journald $ logger --journald=entry.txt
- Notice that --journald will ignore values of other options, such as priority. If priority is needed it must be within input, and use PRIORITY field. The simple execution of journalctl will display MESSAGE field. Use journalctl --output json-pretty to see rest of the fields.
- -V, --version
- Display version information and exit.
- End the argument list. This is to allow the message to start with a hyphen (-).
- Write this message to the log; if not specified, and the -f flag is not provided, standard input is logged.
EXAMPLES¶logger System rebooted
SEE ALSO¶syslog(3), syslogd(8), journalctl(1), systemd.journal-fields(7)
STANDARDS¶The logger command is expected to be IEEE Std 1003.2 ("POSIX.2") compatible.
AVAILABILITY¶The logger command is part of the util-linux package and is available from Linux Kernel Archive