# 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](../../docs/axosyslog-core/4.26/chapter-sources/source-pipe/reference-source-pipe/index.md).

## Declaration:

Terminal window
```
       pipe(filename);
```

Note As of version 3.0.2, pipes are created automatically. In earlier versions, you had to create the pipe using the `mkfifo(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, use `flags(expect-hostname)`.




## Example: Using the pipe() driver

Terminal window
```
       source s_pipe {
            pipe("/dev/pipe" pad-size(2048));
        };
```

* * *

[pipe() source options](../../docs/axosyslog-core/4.26/chapter-sources/source-pipe/reference-source-pipe/index.md)

Last modified May 8, 2026: [Marks sources where we do syslog parsing automatically (5b8c29b7)](<https://github.com/axoflow/axosyslog-core-docs/commit/5b8c29b7e7ee800add5a73ae2fe07f4db5115f6c>)