Sending UDP packets with `logger` command
I have couple different solutions for running custom syslog server (based on ).
The problem I am facing is that the following command does not send UDP packets to the server:
logger -n 127.0.0.1 -P 514 "Test message"Do I properly send a test message?
Any ideas on what I am doing wrong? The scripts apparently should work, but I am unable to confirm they work during tests.
EDIT: I confirmed that syslog receiver is indeed receiving messages sent with UDP protocol. Thus I also clarified the question removing this piece.
2 Answers
An other solution with netcat :
echo -n "test message" | nc -4u -w1 <host> <udp port>
I lost some sanity trying to figure out why I couldn't log across different machines to test our remote logging yesterday
It turns out the util-linux/bsdutils core package which contains "logger", has version 2.20.1 installed and that version silently ignores the -n switch. This is what I found out:
- All newer versions of logger from 2.21 to 2.24 build and work fine.
- Version 2.20.1 builds fine but ignores the -n switch just like the installed version.
- All Ubuntu from 12.04 up to including "trusty" all contain 2.20.1 :(
SOLUTION:
Get the latest util-linux from: ftp://
Unpack, ./configure, make, and copy the binary from ./misc-utils/logger to /usr/local/bin/logger.
You may have to refresh your shell such as "source ~/.bashrc" for the /usr/local/bin version to bite. Confirm the new logger is installed with "logger -V" where it should NOT say "logger from util-linux 2.20.1" anymore.
1More in general
"Zoraya ter Beek, age 29, just died by assisted suicide in the Netherlands. She was physically healthy, but psychologically depressed. It's an abomination that an entire society would actively facilitate, even encourage, someone ending their own life because they had no hope. Th…"