pipe: Collect messages from named pipes
The pipe driver opens a named pipe with the specified name and listens for messages. It is used as the native message delivery protocol on HP-UX.
The pipe driver has a single required parameter, specifying the filename of the pipe to open. For the list of available optional parameters, see pipe() source options.
Declaration:
pipe(filename);
Note
As of version 3.0.2, pipes are created automatically. In earlier versions, you had to create the pipe using themkfifo(1)
command.
Pipe is very similar to the file()
driver, but there are a few differences, for example, pipe()
opens its argument in read-write mode, therefore it is not recommended to be used on special files like /proc/kmsg
.
Warning
-
It is not recommended to use
pipe()
on anything else than real pipes. -
By default, AxoSyslog uses the
flags(no-hostname)
option for pipes, meaning that AxoSyslog assumes that the log messages received from the pipe do not contain the hostname field. If your messages do contain the hostname field, useflags(expect-hostname)
.
Example: Using the pipe() driver
source s_pipe {
pipe("/dev/pipe" pad-size(2048));
};